Shell-Script

差異中有兩個相同文件的無聲結果:如何顯示它們?

  • February 25, 2016

當我設置-s參數時,diff也會列印文件,這是不同的。

diff -s $FIRST_FILE $SECOND_FILE

一種可能的解決方案可能是:

diff -s $FIRST_FILE $SECOND_FILE > /dev/null
if [ $? -eq 0 ]; then
   echo "The files are identical"
fi

注意:它改變了問題文本。

Unix 的理念是每個作業都有一個工具,而外殼則將它們粘合在一起。所以:一個工具來比較,一個工具來獲得所需的輸出格式。

在這種情況下,輸出格式非常簡單,這部分可以直接用 shell 完成。

要比較兩個文件,如果您只關心它們是否具有相同的內容而不是列出差異,請使用cmp.

if cmp -s -- "$FIRST_FILE" "$SECOND_FILE"; then
 printf '%s\n' "$FIRST_FILE = $SECOND_FILE"
fi

引用自:https://unix.stackexchange.com/questions/265785