測試表達試:
學shell編程多學系統腳本
1.條件測試三種語法:
. text <測試表達式>
. [<測試表達式>]???? 單中括號用-a 或 –o,不支持&&,||
.[[<測試表達式>]]?? 雙中括號用&&,||
[[ -f read_num.sh && -x read_num.sh ]] && echo 666||echo 000
666
2.文件測試表達式:
用大括號放多個命令,即做多件事,這些命令是一個整體
3.字符串測試表達式:
.! -z相當于-n
[root@centos6 ~/bin]$[ -n “fdklfj” ] && echo 1||echo 0
1
[root@centos6 ~/bin]$[ ! -z “hkjhkj” ] && echo 1||echo 0
1
3.字符串測試表達式:
.! -z相當于-n
[root@centos6 ~/bin]$[ -n “fdklfj” ] && echo 1||echo 0
1
[root@centos6 ~/bin]$[ ! -z “hkjhkj” ] && echo 1||echo 0
1
3.整數比較
用法建議如下表:
小結:整數比較推薦下面用法
[ $num1 –eq $num2 ] ?注意空格,和比較符號
(($num1>$num2))?? 無需空格,常規數學比較符號
系統腳本例子:
[root@centos6 ~]$grep -w “\-eq” /etc/init.d/nfs
??????? [ $RETVAL -eq 0 ] && RETVAL=$rval
??????????????? [ $RETVAL -eq 0 ] && RETVAL=$rval
??????????????? [ $RETVAL -eq 0 ] && RETVAL=$rval
??????? [ $RETVAL -eq 0 ] && RETVAL=$rval
????????????? ??[ $RETVAL -eq 0 ] && RETVAL=$r
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/98729