条件测试操作
1.test命令
测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值
2.文件测试
常用的测试操作符
-d:测试是否为目录(Directory)
-e:测试目录或文件是否存在(Exist)
-f:测试是否为文件(File)
-r:测试当前用户是否有权限读取(Read)
-w:测试当前用户是否有权限写入(Write)
-x:测试当前用户是否有权限执行(eXcute)
返回0表示条件成立
返回1表示条件不成立
逻辑与,“而且”的意思
3.整数值比较
常用的测试操作符
-eq:等于(Equal)
-ne:不等于(Not Equal)
-gt:大于(Greater Than)
-lt:小于(Lesser Than)
-le:小于或等于(Lesser or Equal)
-ge:大于或等于(Greater or Equal)
查看所在的用户
用户数是否 > 5
用户数是否 >= 10
查看空内存的第4段
空闲内存是否 < 1024MB
4.字符串比较
常用的测试操作符
=:字符串内容相同
!=:字符串内容不同,! 号表示相反的意思
-z:字符串内容为空
测试当前语言环境
不是Not en.US,而是zh_CN.UTF-8
是否覆盖现有文件(yes/no)?
覆盖成功
5.逻辑测试
常用的测试操作符
-a或&&:逻辑与,“而且”的意思
-o或||:逻辑或,“或者”的意思
!:逻辑否
测试当前用户名称
本主机是否有szt
如何测试/media/cdrom目录是否存在?
查询当前的活动进程数,并测试是否小于100?
3.如何测试是否已安装python软件包?
installed 表示存在成立
not installed 表示不存在不成立
4.扩展:编辑脚本szt.sh
用来判断软件是否安装,如果已安装输出“此软件已安装”,如果未安装则进行安装
1.创建目录/tmp/scripts 2.切换工作目录至此目录中 3.复制/etc/pam.d目录至当前目录,并重命名为szt 4.将当前目录的szt及其里面的文件和子目录的属主改为redhat 5.将szt及其子目录中的文件的其它用户的权限改为没有任何权限