2014-10-10 69 views

回答

1

您參考的命令是使用process substitution,即<(...)部分。本質上,它需要cmd1的輸出,並將它呈現爲,好像它是文件系統diff中的命名文件。這是bash外殼的一個功能,因此,首先您需要確保您使用的是bash而不是sh

如果這樣不能解決問題,您可以嘗試下載並安裝AIX的最新bash

如果不起作用,則需要使用2個臨時文件,這樣的事情(或使用mktemp):

cmd1 > tmp1_$$ 
cmd2 > tmp2_$$ 
diff tmp1_$$ tmp2_$$ 
rm tmp?_$$ 
+1

我相信<(...)語法也SES在/ dev/AIX沒有的fd/N設備驅動程序。 bash必須通過一些路徑才能打開。在Unix上,如果fd在fd 5上打開,那麼/ dev/fd/5也將打開相同的fd。 – pedz 2014-10-12 12:50:28

+0

@pedz是的,謝謝你的補充。 – 2014-10-12 14:00:31

相關問題