バッチファイルにドロップしたファイルの情報取得

バッチファイル(.bat)にファイルをドロップしていろんな処理をしたほうが便利なときがある。その下準備として、ドロップしたファイルの情報を取得する方法を調べたのでメモしておく。

@rem ---------------------------------------------------
@rem ドロップしたファイルの情報を取得するテストバッチファイル.
@rem ---------------------------------------------------

@rem %1にはドロップしたファイル名のフルパスが入る
@echo --- %1

@rem %~n1にはドロップしたファイル名のファイル名が入る
@echo --- %~n1

@rem %~x1にはドロップしたファイル名の拡張子が入る
@echo --- %~x1

@rem %~t1にはドロップしたファイル名の日付と時刻が入る
@echo --- %~t1

@rem %~z1にはドロップしたファイル名のファイルサイズが入る
@echo --- %~z1

@rem %~nx1にはドロップしたファイル名のファイル名と拡張子が入る
@echo --- %~nx1

@pause

以上のような記述をしたバッチファイルに sample.txt をドラッグアンドドロップすると次のような出力がコマンドラインに表示される。

--- "C:\test\sample.txt"
--- sample
--- .txt
--- 2006/05/10 18:06
--- 82
--- sample.txt
続行するには何かキーを押してください...

上記のような記号を調べるには、Windowsのヘルプから "バッチ パラメータを使用する" のページを見ると分かる。