linux - if 语句中的 cmp (Bash)

标签 linux bash terminal

<分区>

if [ cmp -s "$expectedOut" "$actualOut" ]; then

下面这行代码一直给我错误提示,说参数太多了。但是我知道这是 cmp 的正确典型用法,所以我认为这可能与括号有关。有人知道这里到底发生了什么吗?

最佳答案

丢失[ ]

if cmp -s "$expectedOut" "$actualOut" ; then

if 的语法是

if Command; then

[ 只是一个可能的命令(恰好期望 ] 作为它的最后一个参数,使事情看起来很漂亮)。

关于linux - if 语句中的 cmp (Bash),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46385143/

相关文章:

linux - 有没有办法为 X 中生成的应用程序指定窗口偏移量?

linux - 更改 cd 默认目录 (bash)

linux - cURL 命令 - 如何检查网络下载速度

linux - AH00526 : Syntax error on line 74 of/etc/apache2/apache2. conf:参数文件中的无效互斥目录:${APACHE_LOCK_DIR}

linux - echo 消息没有出现在 systemd 的终端上

c - 如何在 C 中检查两个设备文件是否相等?

c - 从进程中卸载/删除共享库

linux - 查找特定文件或特定文件集的重复项的最佳方法

php 脚本在 Linux 启动时不执行

c++ - 进程的退出代码是否会溢出小值?