Questions tagged «shell»

Shell是Unix的命令行界面。您可以交互地在外壳程序中键入命令,也可以编写脚本来自动执行任务。使用此标记可解决适用于/ bin / sh和大多数兼容shell(ash,bash,ksh,zsh等)的问题。对于有错误的Shell脚本,请在此处发布之前在http://shellcheck.net中对其进行检查。

6
将文件内容转换为小写
我有temp一些小写和大写内容的文件。 输入值 我temp文件的内容: hi Jigar GANDHI jiga 我想将所有大写转换成小写。 命令 我尝试了以下命令: sed -e "s/[A-Z]/[a-z]/g" temp 但是输出错误。 输出量 我希望它是: hi jigar gandhi jiga 在论证的替代部分中需要做什么sed?

11
生成特定范围内的随机数
谷歌搜索了一下之后,我找不到一种简单的方法来使用shell命令来生成一个包含在特定范围内的随机十进制整数,该范围介于最小值和最大值之间。 我了解/dev/random,/dev/urandom和$RANDOM,但这些都不可以做什么,我需要。 还有其他有用的命令,还是使用先前数据的方法?



3
递归全局?
我想写这样的东西: $ ls **.py 为了获取所有.py文件名,请递归遍历目录层次结构。 即使找到.py文件,shell(bash)也会给出以下输出: ls: cannot access **.py: No such file or directory 有什么办法可以做我想要的吗? 编辑:我想指定我对的特定情况不感兴趣ls,但问题是关于glob语法。

12
确定源外壳脚本的路径
是否有一种方法可以使源 shell脚本找出自身的路径?我主要关注bash,尽管我有一些使用tcsh的同事。 我猜这里可能不太幸运,因为源代码导致命令在当前shell中执行,所以$0当前shell的调用仍然是源代码,而不是源脚本。我目前最好的想法是do source $script $script,以便第一个位置参数包含必要的信息。有人有更好的方法吗? 为了清楚起见,我正在采购脚本,而不是运行它: source foo.bash
80 shell  source 

2
如何在命令行中取消设置变量?
我已经尝试使用以下命令在上设置Proxy yaourt: export ALL_PROXY=http://proxy.example.com:8080 问题是如何取消设置代理yaourt?通常,如何在当前shell中取消设置变量的值?
80 shell  yaourt 



2
是否有充分的理由运行sudo su?
要在禁用了root帐户的计算机上启动root shell,可以运行以下命令之一: sudo -i:运行交互式登录外壳(读取/root/.bashrc和/root/.profile) sudo -s:运行非登录交互式外壳程序(读取/root/.bashrc) 在Ubuntu世界中,我经常看到sudo su建议将其作为获取root shell的一种方法。为什么要在执行一个命令的同时运行两个单独的命令?据我所知,sudo -i等于sudo su -和sudo -s相同sudo su。 唯一的区别似乎是(sudo -i在左侧和sudo su -右侧比较): 并比较sudo -s(左)和sudo su(右): 主要的区别(忽略SUDO_foo变量和LS_COLORS)似乎是版本中的XDG_foo系统变量sudo su。 在任何情况下,是否有必要使用不太雅致的差异sudo su?我能安全地告诉人们(就像我经常遇到的那样)跑步sudo su毫无意义,还是我错过了什么?

14
搜索Shell历史的最佳方法
有没有比grep更好的方法来搜索历史文件以查找命令?我确实知道命令的开头是什么,但我不知道它的历史有多远。 更新:以前是zsh特有的,但是由于答案重叠,请在此处随意回答任何shell(或模式(vi / emacs))。

4
对“查找”的输出进行排序?
在将其find通过管道传递给命令之前,我需要能够按字母顺序对输出进行排序。| sort |在两者之间输入无效,那么我该怎么办? find folder1 folder2 -name "*.txt" -print0 | xargs -0 myCommand
77 shell  find  sort  xargs 


4
如何撤消`set -x`?
我输入set -x了终端。 现在终端继续在我的输出上打印最后运行的命令,因此该命令 ~]$echo "this is what I see" 退货 + echo 'this is what I see' this is what I see 没有手册页set,我该如何set -x关闭?
77 shell 

1
Bash for循环中“ do”关键字的目的是什么?
doBash for循环语法中关键字的目的是什么?对我来说,这是多余的。 for i in `seq 1 2`; do echo "hi"; done 为什么不是这样的语法? for i in `seq 1 2`; echo "hi"; done 我确信它确实可以达到目的。我只想学习。
76 bash  shell  for 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.