SHELL学习 续5

SHELL 编程基础

条件测试

对文件、字符串和数字使用t e s t命令。
对数字和字符串使用e x p r命令。
e x p r命令测试和执行数值输出。使用最后退出状态命令$ ?可测知t e s t和e x p r,二者均以0表
示正确,1表示返回错误

测试文件状态
t e s t一般有两种格式,即:
test condition

[ c o n d i t i o n ]
使用方括号时,要注意在条件两边加上空格。

文件状态测试
- d 目录              - s       文件长度大于0、非空
- f     正规文件   - w      可写
- L 符号连接       - u 文件有s u i d位设置
- r 可读                 - x 可执行

测试时使用逻辑操作符
测试文件状态是否为O K,但是有时要比较两个文件状态。s h e l l提供三种逻辑操作完成此
功能。
-a 逻辑与,操作符两边均为真,结果为真,否则为假。
-o 逻辑或,操作符两边一边为真,结果为真,否则为假。
! 逻辑否,条件为假,结果为真。

字符串测试
字符串测试是错误捕获很重要的一部分,特别在测试用户输入或比较变量时尤为重要。
字符串测试有5种格式

test "string"   ;  test string_operator "string" ; test "string" string_operator  "string";

[string_operator string] ;  [sttring string_operator string]这里,s t r i n g _ o p e r a t o r可为:
= 两个字符串相等。
!= 两个字符串不等。
-z 空串。
-n 非空串。

测试数值
测试数值可以使用许多操作符,一般格式如下:
" n u m b e r " n u m e r i c _ o p e r a t o r " n u m b e r "
或者
[ " n u m b e r " n u m e r i c _ o p e r a t o r " n u m b e r " ]
n u m e r i c _ o p e r a t o r可为:
-eq         数值相等。
-ne         数值不相等。
-gt          第一个数大于第二个数。
-lt           第一个数小于第二个数。
-le          第一个数小于等于第二个数。
-ge         第一个数大于等于第二个数。

可以用逻辑操作符将两个测试表达式结合起来。仅需要用到一对方括号,而不能用两个,
否则将返回错误信息“ too many arg u m e n t s”。

expr用法
e x p r命令一般用于整数值,但也可用于字符串。一般格式为:
expr argument operator argument

转载于:https://www.cnblogs.com/papam/articles/1546126.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值