$(()) 和 expr 有什么区别?

What is the difference between $(()) and expr?

在类 Unix 系统中 $(())expr 之间的主要区别是什么?

$(()) 几乎肯定会在您使用的 shell 范围内。 expr可能是外呼

expr 是早期谍影重重 shell 的遗留物。你应该避免 expr 除非你被迫创建需要与遗留(pre-POSIX)sh 实现互操作的脚本。 (例如,不久前 Solaris sh 就属于这一类。)