スポンサーリンク

diffで差分のあったファイル数をカウント

※MACターミナル(BSD系)での動作確認です。

まずは、diffの-rオプションで2つのディレクトリ間の差分を調べます。
参考:diffの-rオプションでディレクトリ間を再帰的に比較する

 $ diff -r  dir001/ dir002/
diff -r dir001/file2.txt dir002/file2.txt
3c3,4
< line3
\ No newline at end of file
---
> line3
> diff
\ No newline at end of file
diff -r dir001/file4.txt dir002/file4.txt
3c3,4
< line3
\ No newline at end of file
---
> line3
> diff

これだと、差分の内容が表示されてしまうので、
-qオプションで差分のあるファイルのみ表示します。
参考:diffの-qオプションで差分のあるファイルのみ表示(差分の内容は非表示)
 $ diff -r -q  dir001/ dir002/
Files dir001/file2.txt and dir002/file2.txt differ
Files dir001/file4.txt and dir002/file4.txt differ

あとは、wcで行数のカウントをすれば良いかと思います。
ディレクトリの差分はない前提ですね。
 $ diff -r -q  dir001/ dir002/ | wc
       2      10     102

スポンサーリンク