外部のソースコードを自分のプロジェクトに取り込む際にUTF-8 BOM追加と改行コードをCRLFで統一する必要があったので書いてみました。 nkf32.exe にパスが通っている cygwin 上で動作確認しています。 #!/bin/bash if [ $# -ne 1 ]; then echo "Adds UTF-8 BOM to *.h and *.cpp below the specified dir." 1>&2 echo "Usage: add-UTF8BOM-CRLF-to-h-cpp.sh [dir]" 1>&2 exit 1 fi find $1 \( -name '*.h' -or -name '*.cpp' \) | while read -r d; do nkf32 -w8OLw $d $d.hoge && mv -v $d.hoge $d; done; exit 0
![指定されたディレクトリ以下の*.h *.cppファイルをUTF-8 BOMあり・CRLFで統一する - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/ef0953e8c9c6b19b1b203f5fdffb12d128b8bf06/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUU2JThDJTg3JUU1JUFFJTlBJUUzJTgxJTk1JUUzJTgyJThDJUUzJTgxJTlGJUUzJTgzJTg3JUUzJTgyJUEzJUUzJTgzJUFDJUUzJTgyJUFGJUUzJTgzJTg4JUUzJTgzJUFBJUU0JUJCJUE1JUU0JUI4JThCJUUzJTgxJUFFJTJBLmglMjAlMkEuY3BwJUUzJTgzJTk1JUUzJTgyJUExJUUzJTgyJUE0JUUzJTgzJUFCJUUzJTgyJTkyVVRGLTglMjBCT00lRTMlODElODIlRTMlODIlOEElRTMlODMlQkJDUkxGJUUzJTgxJUE3JUU3JUI1JUIxJUU0JUI4JTgwJUUzJTgxJTk5JUUzJTgyJThCJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz05ZGEyMzBkZTU5ZTcyZGZmMmU4YmZlYTRkYmNkMjkwMA%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDB0b21vdGFjbyZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MjVjMzYxZTVhNTE1NDQzOWM2NzBhNmI5YjM4Yjk0MTQ%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3D74a7539b0af417aa57f80a5bb572ff48)