expr的意外行为

sud*_*03r 5 linux shell expression

这可能听起来有点微不足道,但实际上非常令人沮丧:任何人都可以解释我:


[~:user$]expr 3 + 2
6
[~:user$]expr 3 / 2
1
[~:user$]expr 3 * 2
expr: syntax error
Run Code Online (Sandbox Code Playgroud)

当手册页expr精确指定ARG1*ARG2是两者的算术乘积时.

谢谢,

Pet*_*aut 9

你需要引用*,否则shell会尝试扩展文件名.

$ expr 3 '*' 2
6
Run Code Online (Sandbox Code Playgroud)


小智 5

这应该足够了:

expr 3\*2