创建日期:2016/02/29
更新日期:2016/02/29
- shell变量赋值时不能在等号两边留空白,否则shell会把变量名误认为是命令名
- 双引号括起来的变量可以进行替换(用*和?这样的文件名匹配元字符做扩展)和变量扩展,单引号则不会处理变量。
- 左引号’,它处理机制和双引号类似,即能够把字符串的内容按一条shell命令来执行,然后用输出来替换这个字符串。
- cut:把行分成域,默认限定符为tab,可以用-d选项来改变这个限定符,-f选项指定输出包含哪些域。
- bash +x:在执行某条命令之前都会先打印该命令。
- echo命令的-n选项可以消除通常的换行符。
- 给脚本的命令行参数可以成为变量:$1为第一个,$2为第二个,$0为调用该脚本所采用的名字(脚本名),$#为命令行参数的个数,$*为全部的参数,这2个都不算上$0.
- $?为上次执行命令退出的状态,成功为0。不成功则为其他参数1-255,在脚本中调用也是表示的上条命令中的状态(会实时更新),而当一个脚本中exit 100后,那么这时%?值就变成100了。因此可充分利用exit的返回值来判断脚本执行状态。