一気にファイル名をリネームする、素人っぽいけど簡単な方法

abc.JPG を、abc.jpg のように小文字にリネームしたい場合や、WEBの画像圧縮アプリを使ったファイルに、abc.jpgがabc-mine.jpg などのように、識別のために余分な文字がついてくるのを、元の名前に戻したい場合などに、バッチファイルを使って、ホルダー内のファイル名すべてを一気にリネームする方法を紹介します。

素人っぽいのですが、結構使えています。バッチファイルの作り方もわかり易く説明しています。

ここでは、ホルダー内のいくつかのファイルの ①拡張子を全部変える ②ファイル名の中の同じ文字を消したい・・・などをバッチファイルを使って簡単にやる方法で、以下のようなイメージです。

①ホルダー内のすべての拡張子を変更する

拡張子を変更する

②ホルダー内の余分な共通した文字を削除する

一部の文字を消す

もちろん、ホルダー内の全部が上のように共通していなくてばらばらであれば、対象のファイル名だけが変更されて、ルール外のものはそのまま残ります。




上の①の例は、私のデジカメの画像ファイルの拡張子が abc.JPG のように大文字になっているので、 abc.jpg のように小文字の拡張子にリネームしたいような場合にこのやり方を使っています。 また、②のように、WEBアプリを使って圧縮や最適化をすると、識別のために余分な文字がついてくる場合がありますが、これを元の名前に一気に変更したい場合も、この方法を使うと、ホルダー内のすべてのファイル名が一度に変換できます。

バッチファイルを作るというのが分かりにくそうですが

バッチファイルは、「Windows環境で実行できるコマンド列を記述したテキストファイルのこと」で、わかりやすく言うと、「メモ帳にコマンドを書いたもの」です。

Windowsでのバッチファイルの作り方は、メモ帳を使います。

白紙のメモ帳は、デスクトップの空き部分を右クリックして、新規作成の「テキストドキュメント」を選ぶと、「新しいテキストドキュメント.txt」というファイルができます。 それがメモ帳で、そこにコマンドを書き込みます。

メモ帳を使う

デスクトップに下の写真のようなファイルができますので、それを開いて、コマンドを書き込むだけです。

①のやり方 :大文字拡張子を全部小文字にする

デスクトップ似できたメモ帳の例 デスクトップにできたテキストファイルを開いて・・・・

そこにコマンドを書きます。

これがメモ帳に書くコマンド

1行目に、「ren *.JPG *.jpg」  と書き、それでコマンドは完了ですので、名前をつけて保存します。

この「 」内の文字 ren *.JPG *.jpg をコピーして貼り付けてもOKです。

ren *.JPG *.jpg というのが、「拡張子を小文字にする」 というコマンドです。
ren□*.JPG□*.jpg のように、□は半角の空白を入れます。 *は「すべてのファイル」という意味です。

このコマンドを書いて、例えば、「拡張子 大文字を小文字に」という名前をつけて保存すると、下のようなバッチファイルができます。拡張子がbatです。これが「バッチファイル」です。

できたバッチファイル

実際に使ってみましょう

上に示した例のように、拡張子が大文字の4つのファイル 12345.JPG、abcdef.JPG、12345678.JPG、abc.JPG が同じホルダー内にあるとすると、新しく作った「拡張子 大文字を小文字に.bat」ファイルをコピーして、同じホルダ内に貼り付けます。もちろん、xyz.jpg などの「対象外のファイル」が混じっていても、問題ありません。

そして、そのbatファイルをダブルクリックすると、下のように、大文字の.JPGが小文字の.jpgに変換されます。

たったそれだけの作業です。

実行すると次のようになります

一般的には、ファイルをダウンロードする場合は、デスクトップ上で作業することが多いので、この作業をデスクトップ上でやることが多いのですが、問題を起こさないためにも、作業はまず、新しいホルダーを作って、そのホルダー内に変更したいファイルと作ったバッチファイルを入れておいてこの作業をやるようにすると安心でしょう。




(参考)メモ帳に書いた内容の修正は少しわかりにくいのですが、次のようにします

メモ帳のコマンドを修正したい場合の方法も知っておくといいでしょう。

メモ帳に作ったバッチファイル(*.bat)は、通常のファイルを開くときのように、左クリックで開いて修正することができません。(中に書いたコマンドが作動してしまうので、この左クリックする方法ではだめです)

だから、コマンドの確認や修正は、ファイル名を右クリックして、そこから『修正』を選ぶとバッチファイルを開きます。

バッチファイルの修正方法 バッチファイルのコマンド修正

ファイル名変更作業が終わったあとは、(最後でいいですが)不要になったバッチファイルをそのホルダーから削除しておくのが安全ですね。(クリックしてしまっても、同じ処理が作動するだけで問題はありませんが)

②のやり方 :ファイル名の一部分を削除するバッチファイル

WEBの圧縮ソフトなどを使ってファイル(例えば abc.html)を加工すると、@@@-abc.htmlや abc-mine.html などのように、識別のためか、余分な文字がついたファイルになる場合がしばしばあります。(これはこれで便利ですが)

その、@@@_ や -mine などの余分な文字を取りたい場合は、これから説明するバッチファイルをつくって、一括処理することができます。

ここでは、ファイルの前に「clear_」という文字がついている場合を仮定して、それを除去するバッチファイルを作りますが、それは次のようにします。

やり方は、上と同様に、新規作成した「メモ帳」に、必要なコマンドを書き、名前をつけてバッチファイルを作っておいて、それを、リネームしたいホルダーにコピーして、ダブルクリックするだけ・・・・・でOKです。

コマンドは少し長くて6行になりますが、それは次のようになります。

消したい文字は、「clear_」ではない場合でも、2か所の記述を変えれば他の文字でもOKです。 下をコピーペーストして、必要な部分を修正するといいいでしょう。

setlocal enabledelayedexpansion
for %%i in (clear_*.html) do
( set F=%%~ni
set F=!F:clear_=!
ren %%~fi !F!%%~xi
)

下がスクリーンコピーしたものですが、『赤四角』には半角の空白があります。別の文字であれば、青枠に消したい文字を入れます。

半角スペースは赤色で表示

ここでは練習と確認をかねて、「clear_」の文字を消す例で、拡張子が.htmlではなく、JPGの4つのファイルの「clear_」を消すバッチファイルを作って動作させてみます。

そうするともちろん、上に書いたコマンドの一部を変えなくてはなりませんね。 JPGファイルなので、次のように書き換えます。

余分な文字を全部消す

そして、先の①の例と同様に、同じホルダー内にバッチファイルをおいて、それをダブルクリックすると、・・・・・下のように、「clear_」が消えていますね。

ファイル名変更前と変更後

これで完了です。

ここでも、用済みのバッチファイルは、クリックすると同じ動作するだけですが、誤動作などの問題を避けるために、このホルダーから消しておきましょう。

・・・・・これで、かなりバッチファイルのイメージができたと思います。

(応用) abc-mine.jpg の後ろの文字 -mineを消したいのなら

同じようにバッチファイルを作る練習をしてみましょう。

例えば、abc01-mine.jpg abc02-mine.jpg abc03-mine.jpg ・・・のように「-mine」が付加されているファイルが10個あったとして、その「-min」をすべて消したい場合には、上のコマンドの2行目の『clear_*.html』を 『*-min.jpg』に、4行目の『clear_』 『-min』に変えればOK・・・になりますね。

setlocal enabledelayedexpansion
for %%i in (*-mine.jpg) do
( set F=%%~ni
set F=!F:-mine=!
ren %%~fi !F!%%~xi
)

これは実際に動かして確認した状態は示しませんが、練習のつもりでやってみてください。うまく動かなかっても、ファイルが壊れたりすることはありませんが、安全のために、テスト前にバックアップを取っておいてくださいね。

以上ですが、私は専門家でないのでコマンドの詳細説明はできませんが、このコマンドの1行目の 「setlocal enabledelayedexpansion」は呪文のようなもので、「コードを読み込んで、処理をする時に値を変えます」というものです。

もしも、これを書かないと、(やってみるとわかるのですが)たとえば、ホルダー内に変更させたいいくつかのファイルがあって、1行目を書かないバッチファイルをダブルクリックして実行させると、1つ目のファイル(または最終行のファイル)名を変えて、そこで動作止まってしまい、もう一度ダブルクリックで再実行させると、先に変換されたファイル名が変な名前になってしまいます。 だからとにかく、呪文だ・・・と思っておくといいでしょう。

2行目の内容は、「clear_」のあるJPGファイルを対象にして、3行目で、それを「変数」として、4行目で「clear_」のあるファイルを、5行目の「ren」という関数で名前を変えて、1行目にある呪文によって、ホルダー内の全部のファイルの処理をしている・・・という内容になっています。

同じような内容の記事をWEB上に書かれている方もたくさんおられるので、それらも参考にされるといいでしょう。

作ったバッチファイルを、名前変更したいファイルと同じホルダー内に置いて動作させる・・・というところがポイントです。

ともかく、これが何かのお役に立てれば幸いです。

この記事を書いた人
きょくまめ

電気・電子や科学が好きなシニアです。
壊れた電気製品を直して嫌がられるなど、役に立つのか立たないのかわからないことをする趣味があるので、少しでも役に立ちそうなアイデアを紹介する記事を書いていこうと思っています。

フォローする
インターネット
スポンサーリンク
フォローする
生活に便利なもの

コメント

タイトルとURLをコピーしました