【发布时间】:2014-12-05 05:53:30
【问题描述】:
我需要找出 2 个 Cmd 输出之间的差异。我找到了这个适用于 Linux 的 Cmd,但它不适用于 Unix AIX 服务器。
diff <(cmd1) <(cmd2)
请告诉我等效的 UNIX 命令。
【问题讨论】:
我需要找出 2 个 Cmd 输出之间的差异。我找到了这个适用于 Linux 的 Cmd,但它不适用于 Unix AIX 服务器。
diff <(cmd1) <(cmd2)
请告诉我等效的 UNIX 命令。
【问题讨论】:
您引用的命令使用process substitution,即<(...) 部分。本质上,它获取cmd1 的输出并将其呈现给diff,就好像它是文件系统中的一个命名文件。这是bash shell 的一个特性,因此,首先您需要确保您使用的是bash 而不是sh。
如果这不能解决问题,您可以尝试为 AIX 下载并安装最新的 bash。
如果这不起作用,您需要使用 2 个临时文件,类似这样(或使用 mktemp):
cmd1 > tmp1_$$
cmd2 > tmp2_$$
diff tmp1_$$ tmp2_$$
rm tmp?_$$
【讨论】: