我有两个包含源文件的目录,这是我继承的项目,文档很少。如何比较这两个目录以查看它们之间的差异?
我有两个包含源文件的目录,这是我继承的项目,文档很少。如何比较这两个目录以查看它们之间的差异?
试试这个:
diff -Naur dir1/ dir2/
-u
选项使输出结果更易读。-r
选项递归处理所有子目录。-N
和 -a
选项才是必需的。diff -u -r dirA dirB
将为您展示dirA和dirB中文件之间的统一递归差异。
find /path1/dir/ -type f -exec md5sum {} + | awk '{print $2 $1}' | sort >! path1.log
find /path2/dir/ -type f -exec md5sum {} + | awk '{print $2 $1}' | sort >! path2.log
gvimdiff path1.log path2.log
:%s|path1|path2|g
>!
这个符号,它是什么意思? - Daniel Serodio>!
是一个打字错误,应该是 >
。这样命令和过程就有意义了。 - Jostein Kjønigsen>!
被更改为 >
,则结果加1;我所做的另一个小变化只是将目录更改为 path1/dir
并执行 find .
,这样我就不必手动更改路径名了。 - mpontillofind /path1/dir/ -type f -exec md5sum {} + | sed 's/\([^\ ]\+ \)\(.*\)/\2 \1/' | sort >! path1.log
sed
命令正在寻找没有空格的字符串,然后将该字符串放置在末尾,忽略所有其他空格。 - Sooth