一方のディレクトリに存在するがもう一方のディレクトリには存在しないファイルを検索する [closed] 質問する

一方のディレクトリに存在するがもう一方のディレクトリには存在しないファイルを検索する [closed] 質問する

1 つのディレクトリに存在するが、他のディレクトリには存在しないファイルを見つけようとしています。次のコマンドを使用しようとしました:

diff -q dir1 dir2

dir1上記のコマンドの問題点は、 にあるが にはないファイルdir2と、dir2にあるが にはないファイルの両方が見つかることですdir1

私は、 内のファイルを検索しようとしていますdir1が、 内のファイルdir2だけを検索しているわけではありません。

私のデータがどのように見えるかの小さなサンプルです

dir1    dir2    dir3
1.txt   1.txt   1.txt
2.txt   3.txt   3.txt
5.txt   4.txt   5.txt
6.txt   7.txt   8.txt

dir1もう一つの疑問は、 にあるが や にはないdir2ファイルをdir3単一のコマンドで見つけるにはどうすればよいかということです。

ベストアンサー1

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

説明:

  • diff -r dir1 dir2dir1 にのみ存在するファイルと dir2 にのみ存在するファイル、および両方のディレクトリに存在するファイルの変更 (存在する場合) を表示します。

  • diff -r dir1 dir2 | grep dir1dir1 にのみ存在するファイルを表示します

  • awkファイル名のみを印刷します。

おすすめ記事