一尘不染

查找一个目录中存在的文件,而不是另一个目录中的文件

linux

已锁定 。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。

我试图找到一个目录中存在的文件,而不是另一个目录中的文件,我尝试使用以下命令:

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而不是在dir2dir3在一个单一的命令?


阅读 216

收藏
2020-06-07

共1个答案

一尘不染

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

说明:

  • diff -r dir1 dir2 显示哪些文件仅在dir1中,哪些仅在dir2中,以及两个目录(如果有)中存在的文件的更改。

  • diff -r dir1 dir2 | grep dir1 显示哪些文件仅在dir1中

  • awk 仅打印文件名。

2020-06-07