Shell脚本中的let命令简化整数运算

Shell 脚本里的算术操作,let 命令绝对是个老朋友了。它是bash 的内置命令,专门整数运算,写起来比 expr 简洁多了,效率也高。像 let "i=i+1" 或者更简洁的 let "i+=1",都挺顺手的,适合那些只用基本运算、不折腾浮点数的场景。

有意思的是,let其实和 (( )) 的双括号写法差不多,习惯哪个都行。脚本里如果你想把变量加一、乘个方,let都能轻松搞定,不用加 $ 符号,也不用特地跳出一行来做命令替换,清爽多了。

举个例子,如果你要写个小工具接收用户输入的数字,算个平方,再输出结果,let 配合函数和read就能搞定,不啰嗦也不绕弯:

function square {
  local sq
  let "sq=$1*$1"
  echo "结果是 $sq"
}

还有些常用技巧也蛮实用的,比如变量替换、命令替换这些老招,配合 let 用起来还蛮顺的。比如输出用户信息、当前目录、时间,用起来既直观又贴心。

如果你平时写 Shell 脚本比较多,是要做运算逻辑,let 真挺值推荐。想更灵活点,也可以直接上 (( )) 写法,省心不少。

顺带提一下,如果你也写 JavaScript 或 Java,想对比不同语言里的运算符逻辑,可以看看这几个链接:JavaScript 的算术运算Java 的基本运算,理解起来会更透一些。

pdf 文件大小:183.76KB