やりたいこと 世の中にはソースコードの行数を知りたがる人がいます。 Gitリポジトリから詳細なステップ数を取得するツールとしてclocがあり、これだけで十分便利なのですが、一部のファイルはカウントから除外するとか、全体のステップ数と改修分のステップ数を出すとか、コメントを含めないのと含めたのとそれぞれ合算するとか、細かい集計を毎回手作業でやるのは地味に面倒です。 というわけで、シェルでJSONをいじる練習も兼ねて自動化してみました。 アウトプットイメージ 最終的にこんなものを作ります。 ■ロジックのみ ・追加:1000 ・修正:1000 ・流用:1000 --- ・計 :3000 ■コメント・空行を含む ・追加:2000 ・修正:2000 ・流用:2000 --- ・計 :6000 行単位で、追加されたものを「追加」、変更されたものを「修正」、変更のないものを「流用」としてカウントします。
![clocとシェルスクリプトでgit管理ソースの改修ステップ数を集計 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/3ede74e5c8e45f94f863ea1959ef0dc9623135a5/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fadvent-calendar-ogp-background-7940cd1c8db80a7ec40711d90f43539e.jpg%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9Y2xvYyVFMyU4MSVBOCVFMyU4MiVCNyVFMyU4MiVBNyVFMyU4MyVBQiVFMyU4MiVCOSVFMyU4MiVBRiVFMyU4MyVBQSVFMyU4MyU5NyVFMyU4MyU4OCVFMyU4MSVBN2dpdCVFNyVBRSVBMSVFNyU5MCU4NiVFMyU4MiVCRCVFMyU4MyVCQyVFMyU4MiVCOSVFMyU4MSVBRSVFNiU5NCVCOSVFNCVCRiVBRSVFMyU4MiVCOSVFMyU4MyU4NiVFMyU4MyU4MyVFMyU4MyU5NyVFNiU5NSVCMCVFMyU4MiU5MiVFOSU5QiU4NiVFOCVBOCU4OCZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9YmNkNWM4NTQ3NzE3ODM1ZWU1MGE3NTU0ZjEzM2QyYTM%26mark-x%3D120%26mark-y%3D96%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9OTcyJnR4dD0lNDBhYWthc2FrYSZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9OTk3NTYzMjZlMGU0NmFjYzc2ZjdiMmQ0YzEwYzA5YmM%26blend-x%3D120%26blend-y%3D500%26blend-mode%3Dnormal%26s%3D92d9090c541a48f16465dd7a35b03929)