shell测试
2015-09-18 15:30
417 查看
测试的两种方法
方法一:
test expression
方法二:
[ expression ]
文件测试
[ -b FILE ] #当文件存在且是块文件时为真,否则假
[ -c FILE ] #当文件存在且是字符设备时为真,否则假
[ -d FILE ] #当文件存在且是目录时为真,否则假
[ -e FILE ] #当文件或者目录存在时为真,否则假
[ -f FILE ] #当文件存在且为普通文件时为真,否则假
[ -x FILE ] #当文件存在且为可执行文件是为真,否则假
[ -w FILE ] #当文件存在且为可写文件时为真,否则假
[ -r FILE ] #当文件存在且为可读文件时为真,否则假
[ -l FILE ] #当文件存在且为链接文件时为真,否则假
[ -p FILE ] #当文件存在且为管道文件时为真,否则假
[ -s FILE ] #当文件存在且大小不为0时为真,否则假
[ -S FILE ] #当文件存在且为socket文件时为真,否则假
[ -g FILE ] #当文件存在且设置了SGID时为真,否则假
[ -u FILE ] #当文件存在且设置了SUID时为真,否则假
[ -k FILE ] #当文件存在且设置了sticky属性时为真,否则假
[ -G FILE ] #当文件存在且属于有效的用户组时为真,否则假
[ -O FILE ] #当文件存在且属于有效的用户时为真,否则假
[ FILE1 -nt FILE2 ] #当FILE1比FILE2新时为真,否则假
[ FILE1 -ot FILE2 ] #当FILE1比FILE2旧时为真,否则假
字符串测试
[ -z "string" ] #字符串为空时为真,否则假
[ -n "string" ] #字符串非空时为真,否则假
[ "string1"="string2" ] #字符串string1和string2相同时为真,否则假
[ "string1"!="string2" ] #字符串string1和string2不同时为真,否则假
[ "string1">"string2" ] #按照字典排序,字符串string1在string2之前时为真,否则假
[ "string1"<"string2" ] #按照字典排序,字符串string1在string2之后时为真,否则假
整数比较
[ num1 -eq num2 ] #num1==num2为真,否则假
[ num1 -gt num2 ] #num1>num2为真,否则假
[ num1 -lt num2 ] #num1<num2为真,否则假
[ num1 -ge num2 ] #num1>=num2为真,否则假
[ num1 -le num2 ] #num1<=num2为真,否则假
[ num1 -ne num2 ] #num1!=num2为真,否则假
方法一:
test expression
方法二:
[ expression ]
文件测试
[ -b FILE ] #当文件存在且是块文件时为真,否则假
[ -c FILE ] #当文件存在且是字符设备时为真,否则假
[ -d FILE ] #当文件存在且是目录时为真,否则假
[ -e FILE ] #当文件或者目录存在时为真,否则假
[ -f FILE ] #当文件存在且为普通文件时为真,否则假
[ -x FILE ] #当文件存在且为可执行文件是为真,否则假
[ -w FILE ] #当文件存在且为可写文件时为真,否则假
[ -r FILE ] #当文件存在且为可读文件时为真,否则假
[ -l FILE ] #当文件存在且为链接文件时为真,否则假
[ -p FILE ] #当文件存在且为管道文件时为真,否则假
[ -s FILE ] #当文件存在且大小不为0时为真,否则假
[ -S FILE ] #当文件存在且为socket文件时为真,否则假
[ -g FILE ] #当文件存在且设置了SGID时为真,否则假
[ -u FILE ] #当文件存在且设置了SUID时为真,否则假
[ -k FILE ] #当文件存在且设置了sticky属性时为真,否则假
[ -G FILE ] #当文件存在且属于有效的用户组时为真,否则假
[ -O FILE ] #当文件存在且属于有效的用户时为真,否则假
[ FILE1 -nt FILE2 ] #当FILE1比FILE2新时为真,否则假
[ FILE1 -ot FILE2 ] #当FILE1比FILE2旧时为真,否则假
字符串测试
[ -z "string" ] #字符串为空时为真,否则假
[ -n "string" ] #字符串非空时为真,否则假
[ "string1"="string2" ] #字符串string1和string2相同时为真,否则假
[ "string1"!="string2" ] #字符串string1和string2不同时为真,否则假
[ "string1">"string2" ] #按照字典排序,字符串string1在string2之前时为真,否则假
[ "string1"<"string2" ] #按照字典排序,字符串string1在string2之后时为真,否则假
整数比较
[ num1 -eq num2 ] #num1==num2为真,否则假
[ num1 -gt num2 ] #num1>num2为真,否则假
[ num1 -lt num2 ] #num1<num2为真,否则假
[ num1 -ge num2 ] #num1>=num2为真,否则假
[ num1 -le num2 ] #num1<=num2为真,否则假
[ num1 -ne num2 ] #num1!=num2为真,否则假
相关文章推荐
- 【ADB命令行】adb shell screenrecord命令行使用说明
- bash编程之:流程控制
- bash编程之:case语句、read与用户交互
- bash编程之:if语句
- bash编程之:算术运算
- shell中if做比较
- Powershell 查看软件是否成功安装
- Xshell配置ssh免密码登录
- adb shell下查看sqlite数据库
- 手动执行shell没问题,crontab执行shell却不行原因
- Calling Executable Files in PowerShell
- bash shell基础
- adb shell 命令详解,android
- shell学习笔记
- 【转】shell 教程——07 Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
- 【转】shell 教程——06 Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
- 【转】shell 教程——05 第一个Shell脚本
- 脚本乐园 shell 中对小数进行比较的方法总结
- 【转】shell 教程——04 什么时候使用Shell
- 【转】shell 教程——03 Shell脚本语言与编译型语言的差异