在一个目录中查找文件而不在另一个目录中查找文件

在一个目录中查找文件而不在另一个目录中查找文件

是否有任何 Linux/Unix 工具可以查找一个目录中不存在的另一个目录中的所有文件?基本上,我正在寻找对 ls 输出有效的 diff。

简短而甜蜜的剧本也受到赞赏。

答案1

diff已经这样做了:

diff dir1 dir2

示例输出:

Only in dir1: some_file.txt
Only in dir1: some_other_file.txt
Only in dir2: third_file.txt

答案2

重击:

diff <(cd dir1; ls) <(cd dir2; ls)

仅比较文件名 - 而不是文件内容。

答案3

就像人们在这里告诉你的那样,你可以在各种用法变体中使用 DIFF。或者你只是使用dirdiff,这适合你正在尝试的东西!:-)

但如果您想保持一些目录同步,那么您真的应该看看rsync

问候

答案4

for i in $(ls -1 directory1); do if (test -f directory2/$i) then echo $i; fi; done

相关内容