2つの別々のディレクトリにあるディレクトリとファイルを比較します。

2つの別々のディレクトリにあるディレクトリとファイルを比較します。

各フォルダを繰り返して構造を比較するために、各ディレクトリとファイルの出力(テキストファイル)を一覧表示しました。

diff --brief -Nr dir1/ dir2/ > out.txt

私が得た出力はファイルの違いにのみ当てはまります。私が望む出力は、フォルダを繰り返し、フォルダが別のディレクトリにあるかどうかを指定することです。これは構造全体、ファイル、フォルダに適用されます。

cat out.txt:

Files abc/def/xy.txt and pqr/def/xy.txt differ
Files abc/ooo/q.txt and pqr/ooo/q.txt differ
Files abc/ooo/t.txt and pqr/ooo/t.txt differ

ベストアンサー1

2つのディレクトリツリーがあるとしdir_oneますdir_two。次に、bashを仮定すると、次のようになります。

すべてをリストする両方 dir_oneそしてdir_two

comm -12 <(cd dir_one ; find | sort) <(cd dir_two ; find | sort)

すべて一覧表示はいに存在するdir_oneいいえ存在するdir_two

comm -23 <(cd dir_one ; find | sort) <(cd dir_two ; find | sort)

最後に、すべてをリストします。いいえdir_one、しかしはい存在地域dir_two:

comm -13 <(cd dir_one ; find | sort) <(cd dir_two ; find | sort)

おすすめ記事