1.{}
{} :用于获取变量的值
[root@zhu1 myshell]# name=zhujiangtao [root@zhu1 myshell]# echo ${name} zhujiangtao
2.[]
作用1.可用于条件测试等价于test [ 表达式 ] 中括号的前后一定要有空格 作用2.可用于算术运算
[root@zhu1 myshell]# [ "$name" = "zhujiangtao" ] [root@zhu1 myshell]# echo $? 0 [root@zhu1 myshell]# echo $[8+9] 17 [root@zhu1 myshell]# echo $[88- 9] 79 [root@zhu1 myshell]# echo $[88 * 9] 792 [root@zhu1 myshell]# echo $[88 / 9] 9
3.()
命令替换
[root@zhu1 myshell]# name=$(uname -a) [root@zhu1 myshell]# echo $name Linux zhu1 2.6.18-308.el5 #1 SMP Tue Feb 21 20:05:41 EST 2012 i686 i686 i386 GNU/Linux
4.[[]]
用于条件测试,支持模式匹配与通配符
[root@zhu1 myshell]# [[ 1 -eq 2 && 3 -eq 4 ]] [root@zhu1 myshell]# echo $? 1 [root@zhu1 myshell]# name=zhuzhu [root@zhu1 myshell]# [ "$name" = zhu* ];echo $? 1 [root@zhu1 myshell]# [[ "$name" = zhu* ]];echo $? 0 && ,||, 通配符, 可以在` ` 中使用,而不能在[] 中使用
5.(())
算术运算
可用于检测整数表达式的真假,本身不能作为表达式给变量赋值 let和双圆括号中可以使用算术表达式,而中括号不能 let和双圆括号操作符两边可以不留空格 [root@zhu1 myshell]# echo $((88+99)) 187 [root@zhu1 myshell]# echo $((88*3)) 264 [root@zhu1 myshell]# echo $((88*3-4)) 260 [root@zhu1 myshell]# name=((88+99)) -bash: syntax error near unexpected token `('
转载于:https://blog.51cto.com/zhujiangtao/1325743