linux - expr 的意外行为

标签 linux shell expression

这听起来可能有点微不足道,但实际上非常令人沮丧: 谁能给我解释一下:


[~: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

关于linux - expr 的意外行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2171281/

相关文章:

linux - 向所有使用 Wall 的人广播用户消息

linux - 编写脚本通过套接字连接缓慢发送数据的最简单方法

linux - 用下划线替换目录中所有文件中的空格

javascript - JavaScript 函数表达式需要额外括号的上下文

c - 如何将三元运算符合并到优先级攀升算法中?

linux - 多线程环境 - 类 UNIX 环境中的 C++ 信号处理(freeBSD 和 linux)

linux - 在 pkg-config 搜索路径中找不到包 xtables

shell - 列出 TCL 中所有源文件的命令

java - 从java代码执行shell脚本并检查执行是否通过

c++ - 在 C++ 中评估数学表达式的最佳方法是什么?