我想將find的輸出和能夠與diff進行比較,以查看文件是否相同。舉例來說,假設我發現找了幾個文件:有沒有辦法在bash shell中比較find和diff的輸出?
find . -name '*.bar'
./desktop/filename.bar
./otherdirectory/filename2.bar
./otherotherdirectory/filename3.bar
我希望能夠做到
diff ./desktop/filename.bar ./otherdirectory/filename2.bar
和
diff ./desktop/filename.bar ./otherotherdirectory/filename3.bar
等所有對找到的文件(至少看看這些文件是否相同),而無需爲每一對寫入命令行。
的發現-exec選項將不起作用,因爲它取代{}每一次結果在時刻:
find . -name '*.bar' -exec diff {} \;
我也試圖通過管道找到差異的輸出,但我不能得到那個工作,無論是(雖然我還是個新手,也可以這樣做不對):
find . -name '*.bar' | diff
這可能不是可行的,但我寧願沒有寫diff命令每對我用find找到的文件。
你不太清楚你想達到什麼目的。 – devnull
@ user2888465問題的標題並不真正反映真正要求的內容,這似乎是查找相同文件的一種方法。請考慮更改標題(或指定您正在嘗試執行的操作)。 – Adaephon