Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

ディレクトリ群をYAML用に出力したいなら素直にfindを使う

前回の記事

takuya (id:takuya_1st)
find -type d -exec echo - {} \;
じゃだめなの?

とのコメントを頂きました。

色々文字列加工する気満々だったのですが、
冷静に考えればそれすらもprintfとsedでイケてしまいます。
既存YAMLファイルへの挿入も調べてみるとsedでいけるみたいですし……

というわけで、前記事でやりたかった事は

$ find -type d -exec printf "- \"{}\"\n" \; | sed -e "s/\.\///"
- "."
...
- "test_sim/fifo"
- "test_sim/log"
- "test_sim/obj_sim"

Ruby抜きでスマートにできてしまいました。
余分なsliceも無くなりました。
その上、UNIX系環境なら新規に導入せずとも使えるという素敵仕様。

やっぱりUNIXコマンドには勝てませんね……ちゃんと修行しなければ*1

*1:もっと上手い手がある気がしないでもないですが