見つからないディレクトリを見つけるために2つのフォルダのls出力をどのように比較しますか?

見つからないディレクトリを見つけるために2つのフォルダのls出力をどのように比較しますか?

1400のサブフォルダを含むフォルダと1.399のサブフォルダを含むフォルダを比較しようとしています。どのサブフォルダが欠落しているかを知る必要があります。

私はこれを試しました:

diff -rq dir1/ dir2/ | grep dir1/ | awk '{print $4}' > difference1.txt

しかし、6時間が経過してもまだ出力はありません。lsフォルダではほぼ即時なので、diffよりも高速な方法はありますか?

ベストアンサー1

diff -u <(ls dir1) <(ls dir2)

これにより、diffサブディレクトリの内部を表示できなくなります。

それとも勇敢であればこれを試してみてください。)

diff -u <(find dir1/ -maxdepth 1 -type d -exec basename {} \;) <(find dir2/ -maxdepth 1 -type d -exec basename {} \;)

おすすめ記事