Windowsのdirコマンドでファイル名リストを作成
Web制作業務で、1000枚近くある画像を扱うことになったので、さあ大変。データベースと連携させるにしろ、そのままHTML上に貼るにしろ、ファイルリストはどうしても必要になる。一枚ずつ手作業なんてどう考えてもやってられない・やってはいけないからだ。
そこで、
- phpで再帰処理をして値を取得する
- POMで取得する
- そういうツールを探す…
など、色々な選択肢を考えたんだけど、実はWindows付属のコマンドプロンプトで、そういう作業がサクッとできるということを知った。
cdでディレクトリに移動して、dirコマンドを打つと、Linuxのllのようにそのディレクトリ(フォルダ)のファイル名一覧が表示されるのはご存知の通り。
広告
↓こんな感じ
C:\Users\dacelo\Desktop\test> dir
ドライブ C のボリューム ラベルは OS です
ボリューム シリアル番号は XXXX-XXXX ですC:\Users\dacelo\Desktop\test のディレクトリ
2008/10/01 12:09 <DIR> .
2008/10/01 12:09 <DIR> ..
2008/09/22 04:06 36,324 example1.jpg
2008/09/22 04:07 36,165 example2.jpg
2008/09/22 04:07 37,841 example3.jpg
2008/09/22 04:06 34,187 example4.jpg
2008/09/22 04:06 31,474 example5.jpg
2008/09/22 04:07 29,513 example6.jpg
2008/09/22 04:07 30,715 example7.jpg
2008/09/22 04:06 37,478 example8.jpg
2008/09/22 04:06 38,911 example9.jpg
実はこの実行結果というのは、
dir > ./filename.txt
とすると、テキストファイルとして書き出すことができるのだ!
しかしこれだと、先述のように保存日時やファイルサイズまで保存されてしまう。まあテキストにしてから一括置換で加工してもいいんだけど、/bオプションを付けるとファイル名のみのリストになる。
dir /b >./filelist2.txt
example1.jpg
example2.jpg
example3.jpg
example4.jpg
example5.jpg
example6.jpg
example7.jpg
example8.jpg
example9.jpg
できた!