1. ホーム
  2. linux

[解決済み】diffでファイル名だけを出力する方法

2022-04-18 08:24:18

質問

2つのディレクトリを再帰的に比較して出力するLinuxコマンドを実行したいと考えています。 のみ のファイル名が異なる。これには、一方のディレクトリに存在し、他方のディレクトリに存在しないもの、またはその逆、およびテキストの相違が含まれます。

解決方法は?

diffのマニュアルページより。

<ブロッククオート

-q   ファイルが異なるかどうかだけを報告し、差分の詳細を報告しない。

-r   ディレクトリを比較する場合、見つかったサブディレクトリを再帰的に比較します。

コマンドの例です。

diff -qr dir1 dir2

出力例(ロケールに依存)。

$ ls dir1 dir2
dir1:
same-file  different  only-1

dir2:
same-file  different  only-2
$ diff -qr dir1 dir2
Files dir1/different and dir2/different differ
Only in dir1: only-1
Only in dir2: only-2