现在的位置: 首页 > 操作系统 > 正文

LinuxShell编程-条件判断

2020年02月13日 操作系统 ⁄ 共 1491字 ⁄ 字号 评论关闭

1 按照文件类型进行判断 -b 文件:判断该文件是否存在,并且是否为块设备文件(是块设备文件为真) -c 文件:判断该文件是否存在,并且是否为字符设备文件(是字符设备文件为真) -d 文件:判断该文件是否存在,并且是否为目录文件(是目录文件为真) -e 文件:判断该文件是否为真(存在为真) -f 文件:判断该文件是否存在,并且是否为普通文件(是普通文件为真) -L 文件:判断该文件是否存在,并且是否为符号链接文件(是符号链接文件为真) -p 文件:判断该文件是否存在,并且是否为管道文件(是管道文件为真) -s 文件:判断该文件是否存在,并且是否为非空(为非空是真) -S 文件:判断该文件是否存在,并且是否为套接字文件(是套接字文件为真)

两种判断格式 test -e /root/install.log [ -e /root/install.log ] 我们知道$?可以判断上一个命令是否正确执行,0是正确执行,非0是错误执行 但是这样太麻烦,我们可以用另外一种方法 如果是真,输出yes,如果非真,输出no

2 按照文件权限进行判断 -r 文件:判断该文件是否存在,并且是否该文件具体读权限(有读权限为真) -w 文件:判断该文件是否存在,并且是否该文件具有写权限(有写权限为真) -x 文件:判断该文件是否存在,并且是否该文件具有执行权限(有执行权限为真) -u 文件:判断该文件是否存在,并且是否该文件具有SUID权限(有SUID权限为真) -g 文件:判断该文件是否存在,并且是否该文件具有SGID权限(有SGID权限为真) -k 文件:判断该文件是否存在,并且是否该文件具有SBit权限(有SBit权限为真)

注意,这里判断有什么权限只要文件拥有者,所属组和其他人,任何一个有相应的权限,就算有

3 两个文件之间进行比较 文件1 -nt 文件2:判断文件1的修改时间是否比文件2新(如果新则为真) 文件1 -ot 文件2:判断文件1的修改时间是否比文件2旧(如果旧则为真) 文件1 -et 文件2:判断文件1是否和文件2的Inode号一致,可以理解为两个文件是否为同一个文件,这个判断用于判断硬链接是很好的方法

4 两个整数之间的比较 整数1 -eq 整数2:判断整数1是否和整数2相等(相等为真) 整数1 -ne 整数2:判断整数1是否和整数2不相等(不相等为真) 整数1 -gt 整数2:判断整数1是否大于整数2(大于为真) 整数1 -lt 整数2:判断整数1是否小于整数2(小于为真) 整数1 -ge 整数2:判断整数1是否大于等于整数2(大于等于为真) 整数1 -le 整数2:判断整数1是否小于等于整数2(小于等于为真)

5 字符串的判断 -z 字符串:判断字符串是否为空(为空返回真) -n 字符串:判断字符串是否为非空(非空返回真) 字符串1==字符串2:判断字符串1和字符串2是否相等(相等返回真) 字符串1!=字符串2:判断字符串1和字符串2是否不等(不等返回真)

6 多重判断条件 判断1 -a 判断2 :逻辑与,判断1和判断2都成立,最终的结果才为真 判断1 -o 判断2:逻辑或,判断1和判断2有一个成立,最终的结果就为真 ! 判断:逻辑非,使原始的判断式取反

好了,Linux Shell编程-条件判断就总结到这里,如有问题,欢迎指正,谢谢。

本文永久更新链接地址:http://www.xuebuyuan.com/Linux/2016-11/137258.htm

以上就上有关LinuxShell编程-条件判断的相关介绍,要了解更多Linux Shell编程,Linux Shell编程-条件判断,编程,Linux编程,Linux Shell,Android,Android教程,JAVA,C语言,Python,HTML5内容请登录学步园。

抱歉!评论已关闭.