您的位置:首页 > 运维架构 > Shell

shell脚本及条件测试

2011-03-04 13:50 393 查看
#!bin/sh开头
chmod +x filename 后./filename运行
变量都由字符串组成
环境变量生成:export 变量

条件测试操作
1.test命令
在shell环境中,可以根据命令执行后的返回状态值来判断该命令是否成功执行,当返回值为
0时表示成功执行,否则(非0值)表示执行失败。
test测试命令时,可以由以下两种形式:
test
条件表达式 或者 [ 条件表达式 ]
2.测试文件状态
[ 操作符 文件或目录 ]
常用的操作符如下:
-d:测试是否为目录(directory)。
-e:测试目录或文件是否存在(exist)。
-f:测试是否为文件(file)。
-r:测试当前用户是否有权限读取(read)。
-w:测试当前用户是否有权限写入(write)。
-x:测试当前用户是否有权限执行该文件(execute)。
-L:测试是否为符号链接文件(Link)。
3.整数值比较
[ 第1个整数 操作选项 第2个整数 ]
常用的操作选项如下:
-eq:等于(equal)。
-ne:不等于(not equal)。
-gt:大于(greater than)。
-lt:小于(lesser than)。
-le:小于或等于(lesser or equal)。
-ge:大于或等于(greater or equal)。
4.字符串比较
[ 字符串1 操作选项 字符串2 ]
常用的操作选项如下:
=:匹配。
!=:不匹配。
-z str:str长度为0
-n str:str长度不为0
5.逻辑测试
[ 条件表达式1 操作选项 条件表达式2 ]
常用的操作选项如下:
&&:逻辑与,前后两个表达式都成立时整个测试结果才为真,否则为假。在使用test命令
形式进行测试时,此选项可以改为“-a”。
||:逻辑或,前后两个条件至少有一个成立时整个测试结果即为真,否则为假。在使用test
形式进行测试时,此选项可以改为“-o”。
!:逻辑否,表示当指定条件表达式不成立时,整个测试命令的结果为真。
6.空值测试
["$name"=""]
[!"$name"]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: