每次我需要做一些bash脚本,包括if语句,检查空变量和不存在的文件等。我发现自己在google上找到了一些简单的bash手册或指南。
这些通常太长且太复杂,无法快速回答我手头的问题。
因此,我在想,必须有一些命令或手册页以简短且易于访问的方式涵盖基本的bash语法(用于if语句,检查空变量,不存在的文件等)。我确定我还没有找到命令(man bash似乎不是这样)。
在哪里可以找到?
每次我需要做一些bash脚本,包括if语句,检查空变量和不存在的文件等。我发现自己在google上找到了一些简单的bash手册或指南。
这些通常太长且太复杂,无法快速回答我手头的问题。
因此,我在想,必须有一些命令或手册页以简短且易于访问的方式涵盖基本的bash语法(用于if语句,检查空变量,不存在的文件等)。我确定我还没有找到命令(man bash似乎不是这样)。
在哪里可以找到?
Answers:
man bash 是规范的Bash参考。help help为您提供有关helpBash内置程序的帮助,以及如何为您提供有关其他Bash内置程序的简短帮助消息,例如help for。.bash_history。有太多的命令,不同的参数语法,sed以及awk线路噪声和其他的东西永远记住这一切,所以这是很好的有一个“很好的梳理”个人参考标签中查找。help。
help在那里。不需要那么多不必要的man bash阅读!
由于在线上有很多这样的东西,所以这里有个建议。我用它来做各种各样的事情。
创建一个目录$HOME/notes。添加一个子文件夹bash。如果您没有$HOME/bin,请创建一个,然后使用您喜欢的任何方法(例如:in~/.bashrc)将其添加到您的路径中。然后在其中放一个简单的脚本cmdref.sh:
#!/bin/bash
if [ -z "$CMREF_DIR" ]; then
CMREF_DIR="$HOME/notes"
fi
cat "$CMREF_DIR/${1}/${2}.txt"
为方便起见,使用符号链接ln -s ~/bin/cmdref.sh ~/bin/cmdref;我喜欢这样做,因此您可以编辑cmdref.sh源代码,编辑器仍然可以通过后缀识别文件类型。
将任何内容复制粘贴到各种文件中~/notes/bash,例如,您可以拥有一个文件arrays.txt,loops.txt等等。只要这是供您个人使用,就不会侵犯版权。
您现在可以在命令行中使用它,例如:cmdref bash arrays并且该备忘单将被打印到控制台。请注意,尽管文件是.txt(同样,使用适当的后缀对编辑器,文件浏览器等很有用),但您不应使用,cmdref bash arrays.txt因为它们是附加在后的cmdref.sh(脚本唯一要做的就是转换路径并添加后缀)。
vi cmdref并且vim将打开“ cmdref.sh”,然后可以对其进行编辑?或者我是否在这里遗漏了一些明显的内容?
vi ~/bin/cmdref,vim并不真正知道这是哪种文件,而是会使用默认值突出显示(我认为是.txt)。但是,如果您使用vi ~/bin/cmref.shvim知道该文件是shell脚本,则突出显示将是有意义的。但是WRT是您要键入的命令cmdref,而不是cmdref.sh。这就是为什么我使用符号链接。
vi它本身通常是的符号链接vim,这就是为什么您要语法高亮显示的原因(我认为原始的“ vi”没有这种功能)。和:VIM实际上是足够聪明,认识到脚本作为shell脚本,如果文件没有后缀,但原理站;)在极少数情况下,也许我需要/想使用的东西少聪明。
.sh在vim中加载文件,然后set filetype=txt-瞧!
man bash占地面积bash的语法,例如用于各个方面if statements,string is zero并且non-existent files,只要搜索(打/键,并输入以下)进行 CONDITIONAL EXPRESSIONS。
bash你可以尝试help