Shell-Script
差異中有兩個相同文件的無聲結果:如何顯示它們?
當我設置
-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