分类:
2010-08-28 18:35:30
for
i in /etc/profile.d/*.sh ; do if [ -r "$i" ]; then . $i fi done |
if
[ "$i" -ne 1 ];then : else echo "$i is not equal 1" fi |
# A=123 # (A=abc;echo $A);echo $A abc 123 # { A=abc;echo $A; };echo $A abc abc |
# [[ (-d "$HOME")
&& (-w "$HOME") ]] && echo echo "home is a writable
directory" home is a writable directory |
数字测试: -eq -ne
-lt -le -gt -ge,[[ ]]同 [ ]一致 文件测试: -r、-l、-w、-x、-f、-d、-s、-nt、-ot,[[ ]]同 [ ]一致 字符串测试: > < =(同==) != -n -z,不可使用“<=”和“>=”,[[ ]]同 [ ]一致,但在[]中,>和<必须使用\进行转义,即\>和\< 逻辑测试: []为 -a -o ! [[ ]] 为&& || ! 数学运算: [] 不可以使用 [[ ]]可以使用+ - * / % 组合: 均可用各自逻辑符号连接的数字(运算)测试、文件测试、字符测试 |
# [ a \> 1 ] && echo ture || echo
false ture # [[ a > 1 ]] && echo ture || echo false ture |
# [[ a >
1 ]] && echo ture || echo false ture |
# ((i=1+99));echo $i 100 |
# i=99;((i++));echo $i 100 |
# echo $((2**3)) 8 |