let命令的用法
格式:
let 赋值表达式
【注】let赋值表达式功能等同于:(赋值表达式)
例子:给自变量i加8
[root@XCN ~]# i=2 [root@XCN ~]# let i=i+8 [root@XCN ~]# echo $i 10 [root@XCN ~]# i=i+8 #去掉let定义 [root@XCN ~]# echo $i i+8 #输出的结果 提示:let i=i+8等同于((i=i+8)),但后者效率更高
expr命令的用法:
expr命令一般用于整数值,但也可用于字符串,用来表达式变量的值,同时expr也是一个手工命令行计算器。
语法:expr expression
[root@XCN ~]# expr 2 + 2 4 [root@XCN ~]# expr 2 - 2 0 [root@XCN ~]# expr 2 * 2 expr: syntax error [root@XCN ~]# expr 2 \* 2 #*号用/来转义 4
提示:
注意:运算符左右都有空格
使用乘号时,必须用反斜线屏蔽其特定含义。因为shell可能会误解星号的含义
增量计数:
expr在循环中可用于增量计算。首先,循环初始化为0,然后循环值加1,反引号的用法为命令替代,最基本的一种是从(expr)命令接受输出并将之放入循环变量。
例:给自变量i加1
[root@XCN ~]# i=0 [root@XCN ~]# i=`expr $i + 1` [root@XCN ~]# echo $i 1
expr$[$a+$b]表达式形式,其中$a$b可为整数值
[root@XCN ~]# expr $[2+3] 5 [root@XCN ~]# expr $[2*3] 6 [root@XCN ~]# expr $[2**3] 8 [root@XCN ~]# expr $[2/3] 0 [root@XCN ~]# expr $[2%3] 2 [root@XCN ~]# a=5 [root@XCN ~]# b=6 [root@XCN ~]# expr $[$a+$b] 11 #expr将其后的串解释为表达式并计算其值,运算符前后需有空格
expr 特殊用法:
expr判断扩展名脚本
#!/bin/bash if expr "$1" : ".*\.pub" &>/dev/null #判断传递参数扩展名是否为pub then echo "you are using $1" else echo "pls use *.pub file" fi #expr id_dsa.pub:`.*\.pub`,匹配*.pub格式的文件如果是则为真。离:
expr判断是非整数
#!/bin/bash
expr 1 + $1 &>/dev/null if [ $? -eq 0 ] then echo "zhengshu" else echo "feizhengshu" fi
本文出自 “小菜鸟” 博客,请务必保留此出处http://baishuchao.blog.51cto.com/12918589/1941056
原文地址:http://baishuchao.blog.51cto.com/12918589/1941056