LInux---shell编程:使用结构化命令
1、使用if-then语句
2、嵌套的if
3、符合条件测试
使用测试if [ value1 -gt value2 ] 这种形式的情况:
(1)数值比较;(2)字符串比较;(3)文件比较;
其中,数值比较使用的是字符串形式,而字符串比较则使用的符号形式;其中在比较字符串的时候必须进行转义,不然会当作重定向符号,导致意想不到的错误。比较时,会将所有的符号都考虑进去。
数值比较 | 字符串比较 | ||
---|---|---|---|
n1 -eq n2 | 检查n1是否和n2相等 | str1 = str2 | 等于 |
n1 -ge n2 | 大于等于 | str1 != str2 | 不等于 |
n1 -le n2 | 小于等于 | str1 > str2 | 大于 |
n1 -gt n2 |
大于 |
str1 < str2 | 小于 |
n1 -lt n2 | 小于 | -n str | 是否不为0 |
n1 -ne n2 | 不等于 | -z str | 是否为0 |
有关文件比较的命令较多。
4、使用双方括号和双括号
双括号:针对数值计算的优化,直接进行计算;
双中括号:针对字符串操作的优化,有了通配符;
5、case命令
简化了if-else-if等结构。