let的用法
let运算命令的语法格式为: let 赋值表达式 功能等同于 “((赋值表达式))”
举个栗子:

expr的用法
expr(evalute(求值)expressions(表达式))命令既可以用于整数运算,也可以用于相关字符串长度、匹配等运算处理
1、expr用于计算
举个栗子:

注意:(1) 运算符及计算的数字左右都至少有一个空格,否则会报错
(2)使用乘号时,必须用反斜线屏蔽其特定含义,因为Shell会误解星号的含义
2、expr配合变量计算

expr的实战小案例
1、判断一个变量值或字符串是否为整数
实验原理:利用expr进行 计算时必须是整数的规则,把一个变量或者字符串和一个已知的整数(非0)相加,看命令的返回的值是否为0,如果为0就认为做加法的变量或字符串为整数,否则就不是整数
[beifeng@hadoop1-senior ~]$ i=5
[beifeng@hadoop1-senior ~]$ expr $i + 6 &>/dev/null #把 i 和整数相加,&>/dev/null 表示不保留任何输出
[beifeng@hadoop1-senior ~]$ echo $? #输出返回值
0
[beifeng@hadoop1-senior ~]$



2、expr的特殊用法:判断文件扩展名是否符合要求

3、通过expr计算字符串的长度


网友评论