shell
() ①作用域。相当于C++中{},在括号中的语句,可以使用;分隔,每句顺序执行,但是不能被括号外的语句使用其中定义的变量。
②初始化数组。array=(1 2 3) for i in ${ar[@]} do echo $i done
(()) ①进制转换。echo$((8#71))->57。8表示8进制,71表示具体8进制数据,转换10进制之后是57。
②重定义变量。x=10;((x++));echo $x;输出6
③用于运算以及判断。规则上符合C语言习惯,if(($n>=10))等价于if [ $n -eq 10 ]。 for((i=0;i<10;i++))等价于for i in {0..4}
[] ①与test命令相同,-f判断是否文件,[ -f test.txt ];
②运算符比较。==和!=,<用于字符串比较,-gt -eq用于整数比较。-a并且,-o或者
③用于正则表达式。
④描述数组元素。ar=(1 2 3) for i in {0..2}do echo ${ar[i]} done
[[]] ①逻辑判断,例如&&、||、==等。shell脚本中可以多多使用[[]]以替代[]
{} ①变量扩展。ls -al {a..c}.txt,展示a.txt,b.txt,c.txt的详细信息
②触发变量值。例如${ar[2]}数组ar的第三号元素值
③作用域。括号中的语句,使用;分隔,顺序执行。