5 shell编程实战 之 expr用法大全

                      expr的用法大全

1 expr用于计算

运算符及用于计算的数字左右2边至少有一个空格 否则会报错
使用乘号时 必须用反斜线转义
[root@localhost ~]# expr 2 * 2
4

2 用$()将计算表达式括起来

[root@localhost ~]# i=5
[root@localhost ~]# i=$(expr $i + 6 )
[root@localhost ~]# echo $i
11

3 运用 判断一个数是否为整数

[root@localhost ~]# i=5
[root@localhost ~]# expr $i + 6 &> /dev/null
[root@localhost ~]# echo $? #输出返回值
0 #返回为0 运行成功 i为整数
[root@localhost ~]# i=oldboy
[root@localhost ~]# expr $i + 6 &> /dev/null
[root@localhost ~]# echo $? #输出返回值
2 #返回非0 运行失败 i为非整数

4 通过传参判断是否为整数

!/bin/bash
expr $i + 6 &>/dev/null
#条件表达式语法 返回值为0 输出int 否则输出chars
[ $? -eq 0 ] && echo int || echo chars

4.1 补充:if [ 1 -ne 1 -o 0 -ne 0]

then
echo
exit 2
fi
,-o 表示"或"的逻辑运算符。条件语句中的 -o 表示两个条件中只要有一个成立就为真,即逻辑或的关系。因此,如果其中一个条件为真,整个条件语句就会为真。

5判断文件扩展名是否符合要求

!/bin/bash
if expr “$1” : “.*.pub” >/dev/null
then
echo “$1 is a .pub file”
else
echo “$1 is not a .pub file”

6通过expr计算字符串的长度

[root@localhost test]# char=“I am oldday”
[root@localhost test]# expr length “$char” #expr方法
11
[root@localhost test]# echo ${char} | wc -L #wc -L 方法
11
[root@localhost test]# echo ${#char} #计算变量子串的方法
11
[root@localhost test]# echo ${char} | awk ‘{print length($0)}’ #awk的length方法
11

7利用expr的length函数 输出 下列字符串中长度小于6的值

I am oldboy linux welcome to our training
#!/bin/bash
for n in I am oldboy linux welcome to our training
do
if [ expr length $n -le 6 ] #利用expr中的length函数 输出长度<=6的值
then
echo $n
fi
done

7.1 补充:

if [计算表达式 -选项 6]
-le 6 --------<=6
-ge 6 -------->=6
-ne 6 --------!=6
-eq 6 -------=6

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值