let和expr比较

1、空格

let:要求任何操作符两边不能含有空格

expr:必须有空格

2、运算符转义

expr:要求

let:没有要求

[xiluhua@vm-xiluhua][~]$ let var 2 * 2
-bash: let: crontab.log: 语法错误: 无效的算术运算符 (错误符号是 ".log")
您在 /var/spool/mail/xiluhua 中有新邮件
 
[xiluhua@vm-xiluhua][~]$ let var=2*2

[xiluhua@vm-xiluhua][~]$ echo $var
4

[xiluhua@vm-xiluhua][~]$ expr 2 * 2
expr: 语法错误
 
[xiluhua@vm-xiluhua][~]$ expr 2 * 2
4

[xiluhua@vm-xiluhua][~]$ expr 5 > 10  #假为0
0

[xiluhua@vm-xiluhua][~]$ expr 5 < 10  #真为1
1
原文地址:https://www.cnblogs.com/xiluhua/p/5678363.html