这可能听起来有些微不足道,但实际上是相当令人沮丧的:任何人都可以解释我:
[~:user$]expr 3 + 2 6 [~:user$]expr 3 / 2 1 [~:user$]expr 3 * 2 expr: syntax error
当expr
的手册页精确地指定了ARG1 * ARG2是两者的算术乘积。
谢谢,
您需要引用*
,否则shell会尝试文件名扩展。
$ expr 3 '*' 2 6
这应该够了:
expr 3 \ * 2
*
在shell到达expr
之前被扩展,因此它包含Documents
, Videos
, Work
, nsfw
等
@OP,完全取决于你,但我仍然建议使用shell内部的加法操作,而不是调用外部expr
$ echo $(( 3*2 )) 6
如果您需要更多高级数学运算,请使用bc(dc)或awk。