1、set 命令
set -e
在"set -e"之后出现的代码,一旦出现了返回值非零,整个脚本就会立即退出。
set -o pipefail
设置了这个选项以后,包含管道命令的语句的返回值,会变成最后一个返回非零的管道命令的返回值
2、变量命令规则
目前发现和Java的命名规则大致是相同的,鸟哥私房菜中说只能是英文字母和数字,但是我试了变量名称可以有下划线
3、转义字符的问题
在shell脚本中如果想要保持一些转义字符不被转义可以在转义字符前加上"\"符号,如此就会保持原样输出
还有可以使用单引号保持一些特殊字符的原样输出。
4、获取linux内核版本
$(uname -r)
5、shell脚本中单引号与双引号的区别
双引号内可以引用变量,但是单引号引用变量就会原样输出,即单引号是纯文本输出,不会进行转义等。
变量 | 含义 |
---|---|
$0 | 当前脚本的文件名 |
$n | 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2。 |
$# | 传递给脚本或函数的参数个数。 |
$* | 传递给脚本或函数的所有参数。 |
$@ | 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。 |
$? | 上个命令的退出状态,或函数的返回值。 |
$$ | 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。 |