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の新しいファイルからinsert(+)で行を印刷するコマンドを探しています。
dir2/file2に行があるので印刷したいです。
2 files changed, 2 deletions(-), 1 insertions(+)
この質問は以下に関連しています。Diffディレクトリ統計の要約(git diff -git以外のリポジトリと同様にgit diff --stat)
ありがとうございます!
答え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がある場合は(時々RPMkompare
で)、参照するか、何かを見つけます。kdesdk
meld
たくさんより良い。