ファイル名を一括変更するバッチを作ってみた

2017年4月17日Windows DOS

こんにちは。

なんだか急にファイル名を一括で変換したい。

ってことありませんか?

そんな人に朗報です。

ファイル名を変換し、ファイル名の後ろに任意の桁数で番号を割り当てるバッチを作ってみました。

メモ次のように変換できます。
例:サンプル + 3桁の番号
・Aサンプルファイル.txt → サンプル001.txt
・Bサンプルファイル.txt → サンプル002.txt
・Cサンプルファイル.txt → サンプル003.txt

スポンサーリンク

それってどんな時?

写真をパソコンに取り込んだり、仕様書、テストのエビデンスのためのスクリーンキャプチャを大量に取った時ですよね。

他にもあると思いますが。

そんなの便利なフリーソフトを使えばいいじゃん。

って思う方もいらっしゃるかと思いますが、

フリーソフトって、セキュリティ的なあれでインストール出来ない時もありませんか?

そんな時は、Windwos の機能を使って賢く変換しましょう。

DOSコマンドを利用して一括変換するぜ!

現在のように、マウスを使って操作ができるようになる前は全ての操作をコマンド(命令)を入力することで行っていました。

この機能は今でも標準で使えるようになっており、コマンドをどういう順番で、どういう条件で実行するか。

という情報をまとめたファイルを作ると、色々と便利なことができます。
(このファイルをバッチファイルと呼びます)

詳しいことは「Windows バッチ」や、「Windows DOS コマンド」と検索していただければ。

ソースコード

次のコードをコピーして、
メモ帳やエディタソフトなどに張り付け、「xxxxx.bat」という名前で保存します。

何ができるのか

指定したディレクトリ内にあるファイルのファイル名を一括で変換します。
(ファイル名昇順で番号を振ります)

変換時に指定できるのは、「ファイル名」と「シーケンス桁数」となってます。

例えば、ファイル名を「TEST」、シーケンス桁数を「3」とした場合、次のように変換されます。

A.text → TEST000.text
B.text → TEST001.text
C.text → TEST002.text

実行ファイル、および .log ファイルについては対象から除外してあります。

使い方

起動すると

「処理するディレクトリのパスを入力(または [c] キャンセル」と表示されるので、
一括変換したファイルが入っているディレクトリのパスを入力します。

コピーしてペーストすると間違いがないのでお勧めします。

ちなみにコマンドプロンプト上でペーストするには次のようにします。

  1. マウスを使って普通に張り付ける
    コマンドプロンプト上で右クリックをすればできます。
  2. ショートカットでかっこよく張り付ける
    フォーカス(全面に表示され、アクティブになっている)されている状態で、
    「ALT」+「SPACE」→「E」→「P」とするとかっこよくペーストできます

続いて、「新しいファイル名を入力(または [c] キャンセル」と表示されるので

ファイル名を入力して Enter を押してください。

最後に、「ファイルに付与するシーケンス桁数を入力(または [c] キャンセル」と表示されるので

ファイル名の後ろにつける番号の桁数を入力し、 Enter を押してください。

処理対象の確認メッセージが表示されるので、問題がなければ「y」を入力して

Enter を押してください。

エラーもなく、「終了するにはEnterキーを押してください…」が表示されれば完了です。

お断り

対象のディレクトリにあるファイルを、ファイル名の昇順で変換していきます。

ファイルを消したりとかはしないので、最悪のことは起きないと思いますが
ファイル名が思ったように変換されなかった等の苦情は受付ませんのでご了承願います。

プログラムについて、こうした方がいい、間違っているなどの情報はありがたく頂戴します。

スポンサーリンク


関連するコンテンツ