[英]How to make diffstat count removed and newly added files to LOC count?
diff -ur dir1 dir2 | diffstat
这类似于git diff --stat
,但是diffstat
忽略“仅在dir1中”和“仅在dir2中”文件,而git diff
将其添加到删除和插入计数中。 有没有办法让diffstat做同样的事情?
diff -ur --exclude=".git" dir1/ dir2/ | grep -i "only in dir1" | awk '{print $3 $4}' | sed 's/\:/\//' | xargs cat | wc -l
我将这个问题的输出与diffstat命令在问题中吐出的deletes(-)计数相加,以获取实际的删除数,类似于inserts(+)的计数。
更简单:
diff -urN dir1/ dir2/ |diffstat
使用GNU diff的-N
选项,例如, 比较目录时 :
如果仅存在一个文件,则diff通常不显示其内容; 它仅报告一个文件存在,而另一个文件不存在。 您可以使diff行为就像丢失的文件为空一样,以便输出实际存在的文件的全部内容。 (根据丢失的文件位于第一个位置还是第二个位置,它以插入还是删除的形式输出。)为此,请使用
--new-file
(-N
)选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.