Windowsでフォルダー名/ファイル名を一括変更(リネーム)する4つの方法

Windowsでフォルダー名/ファイル名を一括変更(リネーム)する4つの方法

Windows 10で、複数のフォルダーやファイルの名前を一括変更したい場合、拡張子を変更するなど、単純な変更であれば、Windows 10の標準機能やコマンドでも対応できますが、それ以上のことをやりたい場合(特定の文字列や連番を付けたい、ファイルのプロパティ情報をファイル名に設定したい、日時をファイル名に設定したいなど)は、専用のアプリを利用する方法もあります。

そこでここでは、Windows 10でフォルダー名やファイル名を一括変更(リネーム)する4つの方法を紹介します。

動作環境

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit2004

標準機能で一括変更する

Windows 10の標準機能で一括変更する場合は、カッコつきの番号を振ることができます。

たとえば、ファイル名を「テスト(x)」としたい場合、エクスプローラーで対象となるファイルをまとめて選択し、「F2」キーを押したり、右クリックの「名前の変更」から、ファイル名を「テスト」とすると、対象ファイルが「テスト (1)」「テスト(2)」・・・のようにカッコつきの番号に一括変更できます。

Windowsでフォルダー名/ファイル名を一括変更(リネーム)する4つの方法

変更前

Windowsでフォルダー名/ファイル名を一括変更(リネーム)する4つの方法

変更後

コマンドで一括変更する

WindowsコマンドやPowerShellでは、ファイル名に含まれる特定の文字列を置換する方法でファイル名を一括変更できます。

もちろん、より複雑な一括変更もスクリプトである程度は対応できますが、ここではスクリプトを使わないでできる一般的な変更方法を紹介します。

RENコマンド

RENコマンドでは、拡張子を変更したり、ファイル名の一部を変更することができ、ワイルドカードを利用することで複数ファイルを対象とすることも可能です。

下の例では、拡張子を「txt」から「html」に一括変更したり、ファイル名の「AAA」を「BBB」に一括変更しています。

> ren *.txt *.html
> ren AAA* BBB*
Memo

RENコマンドでワイルドカードを利用してファイル名を一括変更する場合は、変更前の文字列と変更後の文字列は同じ長さにしないと、意図したとおりに変更されないことがあります。特に文字列を短くするときには注意しましょう。

Rename-Itemコマンドレット

PowerShellのRename-Itemコマンドレットでも、ファイル名の一部を一括で変更することができます。

下の例では、対象フォルダー内のすべてのファイルの名前を一括で変更しています。

PS> Get-ChildItem <対象フォルダー> -File | Rename-Item -NewName { $_.Name -replace '置換対象文字列','置換後文字列' }

専用アプリで一括変更する

PowerRenameで一括変更する

Microsoftが提供しているWindows 10向けのユーティリティソフト「PowerToys」には、ファイル名を一括変更するためのツール「PowerRename」が含まれています。

「PowerRename」を利用すれば、番号を振る、ファイル名・フォルダー名を変更するといった一般的な変更だけでなく、正規表現を利用した一括変更もできます。

Windows 10や11が使いやすくなるMicrosoft公式ツール「PowerToys」
ここでは、Windows 10や11を使いやすくカスタマイズしてくれるMicrosoft製ユーティリティー「PowerToys」に搭載されている機能や、各機能の基本的な使い方を紹介します。

Flexible Renamerで一括変更

桁数を指定した連番を振る、日時を付加する、正規表現を使用して変更するなど、複雑な一括変更を行いたいときは、サードパーティーのファイル名の一括変更ツール「Flexible Renamer」がおすすめです。

Windowsでフォルダー名/ファイル名を思い通りに一括変更するなら「Flexible Renamer」
ここでは、Windows環境でフォルダー名やファイル名を一括変更できる無料ツール「Flexible Renamer」の使い方を紹介します。

あとがき

単純なファイル名の変更であれば、Windowsの標準機能やコマンドを利用してサクッと変更できますが、それ以上の複雑な一括変更をコマンドなどで対応しようとすると、スクリプトを作成しなければならなかったりと、対応に時間が掛かってしまいます。

時間効率を優先するなら、複雑な一括変更をしたいときは「Flexible Renamer」のような専用ツールを利用するのがおススメです。