xshell脚本之条件语句
如果test命令中列出的条件成立,test命令就会退出并返回状态码0,
如果条件不成立,test命令就会退出并返回非零的退出状态码,这使得if-then语句不会再被执行
格式:
格式1: test 条件表达式 格式2: [ 条件表达式 ]
| 常用操作符 | 说明 |
| -d | 测试是否为目录 |
| -e | 测试目录和文件是否存在 |
| -f | 测试是否为文件 |
| -r | 测试当前用户是否有读权限 |
| -w | 测试当前用户是否有写权限 |
| -x | 测试当前用户是否有执行权限 |


格式:
[ 整数1 操作符 整数2 ]
| 常用操作符 | 说明 |
| -eq | 等于 |
| -ne | 不等于 |
| -lt | 小于 |
| -gt | 大于 |
| -le | 小于或等于 |
| -ge |
大于或等于 |

格式:
[ 字符串1 = 字符串2 ] 判断是否相等 [ 字符串1 != 字符串2 ] 判断是否不等
| 常用操作符 | 说明 |
| = | 字符串内容相同 |
| != | 字符串内容不同 |
| -z | 字符串内容为空 |
| -n |
检查是否有字符串存在 |

格式:
格式1∶ [ 表达式1 ] 操作符 [ 表达式2 ]… 格式2∶ 命令1 操作符 命令2…
| 常用操作符 | 说明 |
| -a或&& | 逻辑与,而且的意思 |
| -o或▕▕ | 逻辑或,或者的意思 |
| ! | 逻辑否 |

a)单分支结构
格式:
if [ 条件判断式 ]; than 当条件判断成立时,可以进行的命令工作内容 fi 这里将if反过来写,结束if语句的意思



b)双分支结构:
格式:
if [ 条件判断式 ]; than 当条件判断成立时,可以进行的命令工作内容 else 当条件判断不成立时,可以进行的命令工作内容 fi



c)多分支结构:
格式:
if [ 条件判断式 ]; than 当条件判断成立时,可以进行的命令工作内容 elif [ 条件判断式二 ]; than 当条件判断成立时,可以进行的命令工作内容 else 当上面的条件判断都不成立时,可以进行的命令工作内容 fi


格式:
case 变量名称 in “第一个变量内容” 程序段 ;; “第二个变量内容” 程序段 ;; *) 不包含第一个变量内容与第二个变量内容的其他程序执行段 默认程序段 ;; esac
case语句注意事项:
原文:https://www.cnblogs.com/lvrui/p/14981752.html