Windowsでサブフォルダを含め拡張子を一括変換したい
Windowsで、フォルダ内のファイルの拡張子をサブフォルダを含めて一括変換したいと思ったことはありませんか?この記事では、サブフォルダも含めファイルの拡張子を一括変換する方法をご紹介していきます。
Windowsでサブフォルダを含め拡張子を一括変換する方法
set target_dir=<対象フォルダのフォルダパスを指定する> for /R %target_dir% %%i in (*.*) do ren %%i %%~nxi.jpg
「/R」で下階層のフォルダへの処理を行い、「%target_dir%」を指定しなかった場合は現在のディレクトリでの実行になります。「%%i」で取得したファイルのフルパスを格納し、(*.*)ではファイルの検索パターンを指定します。「ren」でファイル名の変更の実行を指定しています。「%%~nxi」は、拡張子も含めたファイル名です。
また、下記のコマンドで逆にフォルダ内のファイルの拡張子をすべて解除することができます。バッチファイルの作成時にも役に立ちますよ。
set target_dir=<対象フォルダのフォルダパスを指定する> for /R %target_dir% %%i in (*.jpg) do ren %%i %%~ni
ファイル名を取り出すためのオプションの説明をします。
- %~i:- すべての引用句 (") を削除して、i を展開する。
- %~fi:- %iを完全修飾パス名に展開する。
- %~di:- %iをドライブ文字だけに展開する。
- %~pi:- %iをパス名だけに展開する。
- %~ni:- %iをファイル名だけに展開する。
- %~xi:- %iをファイル拡張子だけに展開する。
- %~si:- 展開されたパスは、短い名前だけを含む。
- %~ai:- %iをファイルの属性に展開する。
- %~ti:- %iファイルの日付/時刻に展開する。
- %~zi:%iファイルのサイズに展開する。
- %~$PATH:i:- PATH 環境変数に指定されているディレクトリを検索し、最初に見つかった完全修飾名に%iを展開する。
- %~dpi:- %iをドライブ文字とパスだけに展開する。
- %~nxi:- %iをファイル名と拡張子だけに展開する。
- %~fsi:- %iを完全なパスと短い名前だけに展開する。
- %~dp$PATH:i:- PATH環境変数に指定されているディレクトリを検索して%iを探し、最初に見つけたファイルのドライブ文字とパスだけに展開する。
- %~ftzai:- %iをDIRコマンドの出力行のように展開する。