Questions tagged «bash»

与其他Bourne / POSIX shell相对,GNU的Bourne Again SHell特有的问题。对于一般关于Unix shell的问题,请改用/ shell标记。



3
bash中的CLICOLOR和LS_COLORS
我在.bashrc中有以下设置用于为列表着色。 导出CLICOLOR = 1 出口LS_COLORS ='no = 00:fi = 00:di = 00; 34:ln = 01; 36:pi = 40; 33:so = 01; 35:do = 01; 35:bd = 40; 33; 01: cd = 40; 33; 01:or = 40; 31; 01:ex = 01; 32:*。tar = 01; 31:*。tgz = 01; 31:*。arj = 01; 31:*。taz …

2
在bash脚本中抑制stderr消息
考虑以下(略微愚蠢的)脚本名称“ test1.sh”: #/bin/bash # sleep 10 & echo sleep pid = $! pkill sleep 运行它时,不仅得到回声的输出,而且还得到bash关于stderr睡眠死亡的报告: $ ./test1.sh sleep pid = 3551 ./test1.sh: line 5: 3551 Terminated sleep 10 在这种情况下,我想将打印输出抑制为stderr。我知道我可以在命令行中做到这一点,如下所示: $ ./test1.sh 2> /dev/null ......但有没有办法从抑制其内的脚本?(我知道我可以将其包装在第二个脚本中,并让包装器将其重定向,但是必须有一些更简单的方法...)




3
重击:双等于vs -eq
我正在bash中进行整数比较(试图查看用户是否以root用户身份运行),并且发现了两种不同的实现方式: 双重等于: if [ $UID == 0 ] then fi -eq if [ $UID -eq 0 ] then fi 我知道bash中没有> =或<=,只有-ge和-le,所以为什么==会有一个-eq? 双方比较的方式是否有所不同?
47 bash  shell  arithmetic 


5
给grep输出到rm
我正在尝试将grep输出传递给rm,但它会输出无用的东西。是否需要任何开关rm?或者可以rm直接提供正则表达式? ls | grep '^\[Daruchini'| rm rm:缺少操作数请尝试使用rm --help获取更多信息。
47 bash  grep  rm 


7
将来更改时,如何加固bash脚本以免造成损害?
因此,我删除了我的主文件夹(或更确切地说,是我拥有写权限的所有文件)。发生的是我有 build="build" ... rm -rf "${build}/"* ... <do other things with $build> 在bash脚本中,并在不再需要$build时删除了声明及其所有用法-而是rm。Bash高兴地扩展到rm -rf /*。是的 我感到很愚蠢,安装了备份,重新进行了丢失的工作。试图摆脱耻辱。 现在,我想知道:什么是编写bash脚本以使此类错误不会发生或者至少不太可能发生的技术?例如,我写过吗 FileUtils.rm_rf("#{build}/*") 在Ruby脚本中,解释器会抱怨build没有声明,因此该语言可以保护我。 我在bash中考虑过的内容,除了合计rm(相关问题中的许多答案都提到了,这并非没有问题): rm -rf "./${build}/"* 那会杀死我目前的工作(一个Git回购),但没有别的。 rm在当前目录之外执行操作时,需要进行交互的变体/参数化。(找不到任何内容。)类似的效果。 是这样吗,或者还有其他方法可以编写这种意义上的“健壮” bash脚本吗?
46 bash  shell-script  rm 


12
使CD自动ls
我发现我经常做以下事情: %> cd bla/bla %> ls 我希望每当我cd进入目录时,它就会自动执行ls。 我摆弄.bashrc了一段时间,但不知道如何实现它。

2
为什么ZSH用高亮的百分比符号结束一行?
我有时会在各种应用程序中注意到这一点。我经常以为这是因为输出被提前取消(例如ctrl + c)或类似的操作,而zsh则填充了新的换行符。但是现在,好奇心已经成为我最好的,因为它似乎并没有做到那么快。 sh 重击 该Sequence程序是我在阅读Java认证时从书中摘录的,只是想看看它是否可以编译和运行。我确实注意到它没有使用包/类中的println()方法System.out。相反,它使用普通old print()。 缺少换行符是我得到此符号的原因吗?
46 bash  zsh  prompt  newlines 

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.