在bash,當一個人需要知道兩個命令之間的差異,可以使用diff
如下:如何爲diff創建複雜命令的匿名錯誤管道?
diff <(foo) <(bar)
當foo
和bar
是複雜的命令,說ls | grep something
但是這只是比較標準輸出,是否有類似的命令來比較錯誤輸出?或者更好的是,兩者在同一時間?
在bash,當一個人需要知道兩個命令之間的差異,可以使用diff
如下:如何爲diff創建複雜命令的匿名錯誤管道?
diff <(foo) <(bar)
當foo
和bar
是複雜的命令,說ls | grep something
但是這只是比較標準輸出,是否有類似的命令來比較錯誤輸出?或者更好的是,兩者在同一時間?
當富/酒吧是複雜的命令(例如,與管/重定向):
diff <((foo) 2>&1) <((bar) 2>&1)
說明:(foo)
在副殼執行foo
,允許2>&1
將標準和錯誤輸出正確地合併到標準輸出中。
執行foo
沒有子shell會使得2>&1
只合並最後一個命令的輸出。
管錯誤輸出到標準輸出:
diff <(foo 2>&1) <(bar 2>&1)