LINUX与UNIX SHELL编程指南017.pdf
《LINUX与UNIX SHELL编程指南017.pdf》由会员分享,可在线阅读,更多相关《LINUX与UNIX SHELL编程指南017.pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、下载第17章 条 件 测 试写脚本时,有时要判断字符串是否相等,可能还要检查文件状态或是数字测试。基于这些测试才能做进一步动作。Te s t命令用于测试字符串,文件状态和数字,也很适合于下一章将提到的i f、t h e n、e l s e条件结构。本章内容有:对文件、字符串和数字使用t e s t命令。对数字和字符串使用e x p r命令。e x p r命令测试和执行数值输出。使用最后退出状态命令$?可测知t e s t和e x p r,二者均以0表示正确,1表示返回错误。17.1 测试文件状态t e s t一般有两种格式,即:test condition或 c o n d i t i o n
2、 使用方括号时,要注意在条件两边加上空格。测试文件状态的条件表达式很多,但是最常用的可在表 1 7-1中查到。表17-1 文件状态测试-d目录-s文件长度大于0、非空-f正规文件-w可写-L符号连接-u文件有s u i d位设置-r可读-x可执行使用两种方法测试文件s c o r e s.t x t是否可写并用最后退出状态测试是否成功。记住,0表示成功,其他为失败。两种状态均返回0,可知文件s c o r e s.t x t可写,现在测试其是否可执行:查看文件s c o r e s.t x t权限列表,可知结果正如所料。下面的例子测试是否存在a p p s b i n目录目录a p p s b
3、 i n果然存在。测试文件权限是否设置了s u i d位从结果知道s u i d位已设置。17.2 测试时使用逻辑操作符测试文件状态是否为O K,但是有时要比较两个文件状态。s h e l l提供三种逻辑操作完成此功能。-a 逻辑与,操作符两边均为真,结果为真,否则为假。-o 逻辑或,操作符两边一边为真,结果为真,否则为假。!逻辑否,条件为假,结果为真。下面比较两个文件:下面的例子测试两个文件是否均可读。结果为真。要测试其中一个是否可执行,使用逻辑或操作。s c o r e s.t x t不可执行,但r e s u l t s.t x t可执行。要测试文件r e s u l t s.t x t
4、是否可写、可执行:结果为真。17.3 字符串测试字符串测试是错误捕获很重要的一部分,特别在测试用户输入或比较变量时尤为重要。字符串测试有5种格式。第17章 条 件 测 试155下载这里,s t r i n g _ o p e r a t o r可为:=两个字符串相等。!=两个字符串不等。-z 空串。-n 非空串。要测试环境变量E D I TO R是否为空:非空,取值是否是v i?是的,用e c h o命令反馈其值:测试变量t a p e与变量t a p e 2是否相等:不相等。没有规定在设置变量时一定要用双引号,但在进行字符串比较时必须这样做。测试变量t a p e与t a p e 2是否不相
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LINUX与UNIX SHELL编程指南017 LINUX UNIX SHELL 编程 指南 017
限制150内