控制流

1.条件测试

  -d ---目录

  -f  ---正规文件

 -L  ----符号链接

 -r ----可读

 -s ----文件长度大于0,非空

 -w ---可写

 -u ---文件有suid位位置

-x ----可执行

 

[root@localhost yjg]# test -x yjg.txt
[root@localhost yjg]# echo $?
0

 

2.测试逻辑操作符

 [root@localhost yjg]# [ -w yjg.txt -a -w zhanghong.txt ]  ----逻辑与
 [root@localhost yjg]# echo $?

 0

 

[root@localhost yjg]# [ -x yjg.txt -o -w zhanghong.txt ]  ------逻辑或
[root@localhost yjg]# echo $?
0

 

3.字符串测试

= 字符串相等

! = 字符串不等

-z 空串

-n 非空串

 

[root@localhost yjg]# [ -z $EDITOR]
[root@localhost yjg]# echo $?
0

 

[root@localhost yjg]# [ $EDITOR = "vi" ]
[root@localhost yjg]# echo $?
0

 

[root@localhost ~]# s1="/dev/kk1"
[root@localhost ~]# s2="/dev/kk2"
[root@localhost ~]# [ ${s1} = ${s2} ]
[root@localhost ~]# echo $?
1

 

4.测试数值

 -eq -----相等

 -ne -----不相等

 -gt ------大于

 -lt ------ 小于

 -le ------小于等于

 -ge ------大于等于

 

[root@localhost ~]# NUMBER=130
[root@localhost ~]# [ ${NUMBER} -eq 130 ]
[root@localhost ~]# echo $?
0

 

[root@localhost ~]# SOURCE_NUM=120
[root@localhost ~]# DEST_NUM=130
[root@localhost ~]# [ ${SOURCE_NUM} -gt ${DEST_NUM} ]
[root@localhost ~]# $echo $?
-bash: 1: command not found
[root@localhost ~]# echo $?
127
[root@localhost ~]# [ ${SOURCE_NUM} -lt ${DEST_NUM} ]
[root@localhost ~]# echo $?
0
[root@localhost ~]#

 

5.expr的用法

expr ------相当于一个计数器

 

[root@localhost ~]# expr 10 + 10
20
[root@localhost ~]# expr 30 / 2
15
[root@localhost ~]# expr 30 / 2 /3
expr: syntax error
[root@localhost ~]# expr 30 / 2 / 3
5
[root@localhost ~]# expr 30 /* 3
90
[root@localhost ~]#

 

增量计数

[root@localhost ~]# LOOP=0
[root@localhost ~]# LOOP=`expr $LOOP + 1 `

 

数值测试

[root@localhost ~]# VALUE=12
[root@localhost ~]# expr $VALUE + 10
22
[root@localhost ~]# echo $?
0
[root@localhost ~]# VALUE=hello
[root@localhost ~]# expr $VALUE + 10
expr: non-numeric argument
[root@localhost ~]#

 

[root@localhost ~]# VALUE=hello
[root@localhost ~]# expr $VALUE + 10
expr: non-numeric argument
[root@localhost ~]# expr $VALUE = "hello"
1

 

模式匹配

[root@localhost ~]# VALUE=accounts.doc
[root@localhost ~]# expr $VALUE : '/(.*/).doc'
accounts

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值