Shell - 简明Shell编程04 - 判断语句(If)
2017-08-14 22:51
225 查看
示例脚本及注释
#!/bin/bash var=$1 # 将脚本的第一个参数赋值给变量var if test $var # test - check file types and compare values then if [ $var == "right" ];then # “[]”是调用test命令的一种形式,"[]"两边必须加空格; echo "Right!" elif test $var = "wrong";then # 比较字符串时,“=”等价与“==”,两边必须加空格; echo "Wrong!" else echo "Nothing!" fi else echo "No arguments!" fi # ### if/else流程控制 # - elif语句和else语句是非必须语句,根据需要添加; # - 条件下的执行体不能为空; # # # ### test命令 # - Shell中的test命令用于检查某个条件是否成立,可以进行数值、字符和文件的测试 # - 通常用“[]”来表示条件测试。使用"[]"时,两边必须加空格; # - 通过man命令获取test命令的详细信息; # 0)常用 # [ -f somefile ] :判断是否是一个文件 # [ -x /bin/ls ] :判断/bin/ls是否存在并有可执行权限 # [ -n $var ] :判断$var变量是否有值 # [ $a = $b ] :判断$a和$b是否相等 # 1)判断表达式 # if test (表达式为真) # if test !表达式为假 # test 表达式1 –a 表达式2 两个表达式都为真 # test 表达式1 –o 表达式2 两个表达式有一个为真 # 2)判断字符串 # test –n 字符串 字符串的长度非零 # test –z 字符串 字符串的长度为零 # test 字符串1=字符串2 字符串相等 # test 字符串1!=字符串2 字符串不等 # 3)判断整数 # test 整数1 –eq 整数2 整数相等 # test 整数1 –ge 整数2 整数1大于等于整数2 # test 整数1 –gt 整数2 整数1大于整数2 # test 整数1 –le 整数2 整数1小于等于整数2 # test 整数1 –lt 整数2 整数1小于整数2 # test 整数1 –ne 整数2 整数1不等于整数2 # 4)判断文件 # test File1 –ef File2 两个文件具有同样的设备号和i结点号 # test File1 –nt File2 文件1比文件2 新 # test File1 –ot File2 文件1比文件2 旧 # test –b File 文件存在并且是块设备文件 # test –c File 文件存在并且是字符设备文件 # test –d File 文件存在并且是目录 # test –e File 文件存在 # test –f File 文件存在并且是正规文件 # test –g File 文件存在并且是设置了组ID # test –G File 文件存在并且属于有效组ID # test –h File 文件存在并且是一个符号链接(同-L) # test –k File 文件存在并且设置了sticky位 # test –b File 文件存在并且是块设备文件 # test –L File 文件存在并且是一个符号链接(同-h) # test –o File 文件存在并且属于有效用户ID # test –p File 文件存在并且是一个命名管道 # test –r File 文件存在并且可读 # test –s File 文件存在并且是一个套接字 # test –t FD 文件描述符是在一个终端打开的 # # # ### “[]”与test命令 # - 实际上“[]”是调用test命令的一种形式; # - 左中括号“[”是系统的一个内置命令,存在路径是“/bin/[”,是调用test命令的标识; # - 右中括号“]”是关闭条件判断的标识;
相关文章推荐
- shell脚本if判断语句报错[: too many arguments的两种原因
- shell if 判断语句
- 续写vim,shell脚本基础编辑,read命令,if与case判断语句,文件查找方式,压缩与解压,
- shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case语句
- Shell中判断语句if中-z至-d的意思
- 一天一条shell知识------shell的结构之判断语句if-then
- shell if语句之判断参数
- [Shell] if、for、while流程语句以及整数字符串判断比较的实例详解
- Shell中判断语句if中-z至-d的意思
- Shell中的条件判断语句if~then~fi
- shell if 判断语句
- shell 编程中使用到得if语句内判断参数
- shell 脚本之判断语句 if 详解
- shell基础之二:条件判断语句if、case及read命令,
- linux之基础shell脚本编程2 if语句循环判断
- Shell中的if和case判断语句
- shell 编程中使用到得if语句内判断参数
- shell 中 if判断语句
- shell流程控制语句之一if判断
- shell中if语句中判断 [: too many arguments