shell之条件语句(条件测试、if语句,case语句)
1条件测试
文章目录
1.1文件测试
shell 环境根据命令根据命令执行后的返回状态值($?) 来判断是否执行成功,当返回值为 0 时,表示成功,非 0 时,表示失败或者异常。使用专门的测试工具------test命令,可以对特定条件进行测试,并根据返回值来判断是否成立。
有三种表示的方式
格式1: test 条件表达式
格式2 : [ 条件表达式 ] 注意中括号和表达式中间需要隔一个空格
格式3 : [[ 条件表达式 ]]
test加选项的含义
-d 测试是否为目录(directory)
-e 测试目录或文件是否存在(exist)
-f 测试是否为文件(file)
-r 测试当前用户是否有权限读取(read)
-w 测试当前用户是否有权限写入(write)
-x 测试是否设置有可执行权限
-b 测试是否为设备文件
-c 测试是否为字符设备文件
-s 测试存在且文件大小为空
-L 测试是否为链接文件
执行条件测试操作以后,通过预定义变量 ( $? )可以获得测试命令的返回值,而判断该条件是否成立。**
例 test的用法
[ ]中括号的用法
1.2整数测试
整数值比较指的是根据给定的两个整数值,判断第一个数与第二个数的关系,如是否大于、等于、小于第二个数。整数值比较的常用操作选项如下,使用时将操作选项发放在要比较的两个整数之间,中间空格隔开。
常用测试操作符
-eq 第一个数 等于(equalÿ