dir1 有 1 个文件,dir2 有 2 个文件,如下所示:
/tmp$ ls dir1
file1
/tmp$ cat dir1/file1
line1
line2
line3
/tmp$ ls dir2
file1 file2
/tmp$ cat dir2/file1
line1
/tmp$ cat dir2/file2
line1
/tmp$ diff -ur dir1 dir2 | diffstat
file1 | 2 --
file2 |only
2 files changed, 2 deletions(-)
我正在寻找一个命令来将 dir2 新文件中的行打印为插入(+)
dir2/file2 有一行,所以我想打印
2 files changed, 2 deletions(-), 1 insertions(+)
这个问题与目录统计摘要的差异(git diff --stat 就像非 git 存储库一样)
谢谢!
答案1
您需要使用-N
(将丢失的文件视为空)选项diff
。例如:
$ diff -N -u -r dir1/ dir2/ | diffstat
file1 | 2 --
file2 | 1 +
2 files changed, 1 insertion(+), 2 deletions(-)
答案2
你尝试过直接diff
反对他们吗?diff -u dir1 dir2
如果您有 GUI,请查看kompare
(有时在kdesdk
RPM 中)和/或meld
查找某些内容很多更好。