$ cmp -s file1 file2
上記のコマンドは、次の場合は何も返しません。
- ケース1:2つのファイル(file1とfile2)が異なります。
- ケース2:2つのファイル(file1とfile2)は同じです。
上記のすべての方法を試しましたが、私のUnixシステムは敏感ではありません。
ベストアンサー1
-s
ある静かな、これはcmp
何も出力せず、ファイルが同じかどうかを終了状態に反映し、シェルステートメントif
で使用できるように指示します。
if cmp -s file1 file2; then
echo same
else
echo differ or error
fi
または:
cmp -s file1 file2 && rm file2
何かを出力するには削除してください-s
。その後、cmp
ファイルが異なると開始位置が異なることを示すメッセージが出力されます。
¹ ファイルが異なる場合ではなく、ファイルを開くことができない場合にエラーメッセージを表示するいくつかの実装を除外します。