我有两个 linux 目录 dir1 和 dir2 两个都有一些文件。现在我想要与 dir1 相比,在 dir2 中添加文件和删除文件的文件名列表。文件应根据文件中的数据或内容进行比较。我是 linux bash 脚本的新手。请帮我。
目前我这样做如下:
find dir1 -iname *.c -o -iname *.h -o -iname *.prm | xargs -n1 md5sum > dir1.fingerprint.md5sum
find dir2 -iname *.c -o -iname *.h -o -iname *.prm | xargs -n1 md5sum > dir2.fingerprint.md5sum
cat dir1.fingerprint.md5sum | cut -d" " -f1 | sort -u > dir1.fingerprint
cat dir2.fingerprint.md5sum | cut -d" " -f1 | sort -u > dir2.fingerprint
diff -NrU 2 dir1.fingerprint dir2.fingerprint
我得到的结果是一些更改 id,如下所示:
--- dir1.fingerprint 2013-03-08 11:57:24.421311354 +0530
+++ dir2.fingerprint 2013-03-08 11:57:34.901311856 +0530
@@ -1,3 +1,3 @@
-43551a78e0f5b0be4aec23fdab881e65
-4639647e4f86eb84987cd01df8245d14
4c9cc7c6332b4105197576f66d1efee7
+9f944e70cb20b275b2e9b4f0ee26141a
+d41d8cd98f00b204e9800998ecf8427e
我希望将结果作为修改或新添加到 dir2 的文件的文件名。如何得到这个。请帮我。