フォルダ内の画像などを整理するとき、ファイル名を連番にしたい場合があります。
()つきの連番化ならWindowsの標準機能で簡単にできます。
しかしこの方法ではアプリによっては順番が(1)→(10)→(11)→(2)→(20)→(21)→…のように並んでしまい、並び替えに不便な場合があります。
これをゼロ埋めの連番化し、001→002→003→…とすることで確実にソートできるようにします。
フリーソフト等を使っても良いですが、今回はソフトなしでコマンドを使って簡単にファイルを連番化できる方法を紹介したいと思います。
連番化する手順
まず連番化したいファイル群をWindowsの標準機能を用いて()付きで連番化します。
その後()付きの連番ファイルをコマンドでゼロ埋め連番に変更する、という2ステップで行います。
手順1 ()つきの連番化
Windows標準機能を用いて連番化します。
連番化したいファイル群を全選択し、先頭ファイルの名前を消去することで行えます。
詳しくはこちらの記事で解説しています。
手順2 コマンドによるゼロ埋め連番化
コマンドはコマンドプロンプトより実行します。
ファイル群があるフォルダのアドレスバーに「cmd」と打ち込みコマンドプロンプトを開きます。
そして、下記のコマンドをコマンドプロンプトに入力します。
(そのままコピペで動きます)
※改名するファイル群がjpg形式と仮定しています。
コマンド中の”jpg”の部分を改名したいファイル群の拡張子に変更して使用してください。
【空白あり】
for /l %i in (1, 1, 999) do ren ” (%i).jpg” “%i.jpg”
for /l %i in (1, 1, 9) do ren “%i.jpg” “00%i.jpg”
for /l %i in (10, 1, 99) do ren “%i.jpg” “0%i.jpg”
各行のコマンドの意味は、
- 1番目のファイルから1間隔で999番目まで()をはずす
- 1番目のファイルから1間隔で9番目までファイル名の先頭に00をつける
- 10番目のファイルから1間隔で99番目までファイル名の先頭に0をつける
となっています。
コマンドは1行ずつ実行されるので(1行実行後Enter待ちになる)、適宜Enterキーを押して続行してください。
これを順に実行することで999個のファイルまでの連番化を行うことができます。
ファイル数が999個以下なら正しく連番化され、エラーなどは発生しません。
(仮に連番化するファイルが300個の場合、301から999番までの処理は未処理でスキップされる)
補足
勘の良い方はコマンドの最初にある【空白あり】ってなんのことだ?と思ったかもしれません。
【空白あり】というのは下の 部分の空白のことです。
【空白あり】
for /l %i in (1, 1, 999) do ren “ (%i).jpg” “%i.jpg”
for /l %i in (1, 1, 9) do ren “%i.jpg” “00%i.jpg”
for /l %i in (10, 1, 99) do ren “%i.jpg” “0%i.jpg”
コマンドのrenはリネームコマンドといい、改名前のファイル名と改名後のファイル名を指定します。
1行目における改名前のファイル名は(1).jpg、(2).jpg…のはずですが、手順1での連番化の際、この先頭にはなぜか半角スペースが入ります。
これによりパッと見分からないものの、本当のファイル名は (1)jpg、 (2).jpg…と言った具合になっています。
このため1行目のファイル名の部分に空白(半角スペース)を入れておく必要があります。
ただし、この()の前の空白、しばらく経つと消えます。
(空白が消える条件や経過時間は不明)
その時は以下のコマンドを使用します。
(そのままコピペで動きます)
【空白なし】
for /l %i in (1, 1, 999) do ren “(%i).jpg” “%i.jpg”
for /l %i in (1, 1, 9) do ren “%i.jpg” “00%i.jpg”
for /l %i in (10, 1, 99) do ren “%i.jpg” “0%i.jpg”
場合によって使い分けましょう。
おまけ
連番化したいファイル群がjpg形式やpng形式など複数の拡張子が混ざっている場合、一括で変更できません。
そんなときはあらかじめすべてjpg形式に変えておくとよいでしょう。
すべてのファイルの拡張子を一括で.jpgに変更するコマンドです。
jpgの部分を他の拡張子に変えるなど適宜応用して使ってもらうと良いかと思います。
【jpg化】
ren “*.*” “*.jpg”
あとがき
今回はWindows標準機能の()つき連番化から1歩進んで、コマンドを用いたゼロ埋め連番化について紹介しました。
コマンドは便利なので使えるものはどこかメモ帳にでもコピーしてストックしておくと良いのではないでしょうか。
筆者は今回紹介したようなコマンドをclclのようなクリップボード管理ソフトに登録してすぐに呼び出せるようにしています。
(↓clclが気になった方はぜひ読んでいってね!)
フリーソフトなしで手軽にゼロ埋めできるので、個人的にはこの手法をよく好んで使っています。
ゼロ埋め連番化したいときはぜひ試して見てはいかがでしょうか。