Shell脚本条件语句
前言
使用最基本的Linux命令写成的Shell脚本往往在使用中会显得笨拙、不够灵活,它往往不能根据服务器实际情况自我做出判断,这个时候我们就可以用条件判断与if语句等方式来帮助我们。
一、条件测试
(1)文件测试与整数测试
①文件测试
- 要使shell脚本程序具备一定的“智能”,面临的第一个问题就是如何区分不同情况以确定执行何种操作。
- 测试特定的表达式是否成立,当条件成立,测试语句的返回值为0,否则为其他数值 。
格式:
test 条件表达式
或 [ 条件表达式 ] (条件表达式的两边都需要有空格,且此方法更为常用)
常见的测试操作符 | 含义 |
---|---|
-d | 测试是否为目录(directory) |
-e | 测试目录或文件是否存在(Exist) |
-f | 测试是否为文件(File) |
-r | 测试当前用户是否有权限读取(Read) |
-w | 测试当前用户是否有权限写入(Write) |
-x | 测试当前用户是否有权限执行(eXcute) |
-L | 测试是否为软连接文件 |
-nt | 判断文件A是否比文件B新 |
-ot | 判断文件A是否比文件B旧 |
-et | 判断两个文件是否为同一文件 |