PowerRename ユーティリティ

PowerRename は名前をまとめて変更するツールであり、次のことができます。

  • 多数のファイルのファイル名を変更します ("すべてのファイルを同じ名前にすることはできません")。
  • ファイル名の対象となるセクションで検索と置換を実行します。
  • 複数のファイルに対して正規表現の名前変更を実行します。
  • 一括名前変更を終了する前に、予想される名前変更の結果をプレビュー ウィンドウで確認します。
  • 完了後に名前変更操作を元に戻します。

デモ

このデモでは、ファイル名 "foo" のすべてのインスタンスが "foobar" に置き換えられます。 すべてのファイルには一意の名前が付けられているため、手動で 1 つずつ行うと長い時間がかかります。 PowerRename を使用すると、1 回でまとめて名前を変更できます。 エクスプローラーの [Undo Rename](名前の変更を元に戻す) (Ctrl + Z) コマンドを使用して、最後の変更を元に戻すことができることに注意してください。

PowerRename デモ。

PowerRename ウィンドウ

でファイルを選択した後、 WindowsFile Explorer右クリックして選択 PowerRename すると (PowerToys で有効になっている場合にのみ表示されます)、 PowerRename ウィンドウが表示されます。 選択した項目の数と共に、検索と置換の値、オプションの一覧、および入力した検索と置換の値の結果を表示するプレビュー ウィンドウが表示されます。

PowerRename メニューのスクリーンショット。

検索

テキストまたは正規表現を入力し、選択したファイルの中で、入力した条件と一致するものを検索します。 [Preview](プレビュー) ウィンドウに一致する項目が表示されます。

置換後の文字列

前に入力した 検索 値を置き換えるテキストを入力します。 [Preview](プレビュー) ウィンドウで、元のファイル名と変更されたファイル名を見ることができます。

[正規表現を使用する]

オンにした場合、検索値は正規表現 (regex) として解釈されます。 置換値にも regex 変数を含めることができます (以下の例を参照してください)。 オンにしないと、検索値は、[Replace](置換) フィールドのテキストに置き換えられるプレーンテキストとして解釈されます。

regex 拡張機能の設定メニューの [Use Boost library](Boost ライブラリを使用する) オプションについて詳しくは、正規表現のセクションをご覧ください。

すべての出現箇所を一致させる

オンにすると、検索フィールド内のテキストのすべての一致が、置換テキストで置き換えられます。 それ以外の場合は、ファイル名に含まれる検索テキストの最初のインスタンスのみが置換されます (左から右)。

たとえば、ファイル名が powertoys-powerrename.txt であるとします。

  • 検索: power
  • 置換: super

変更後のファイル名は次のようになります。

  • [すべての出現箇所を一致させる] チェック ボックスをオフにします。 supertoys-powerrename.txt
  • チェックされたすべての出現箇所と一致する: supertoys-superrename.txt

大文字小文字は区別される

オンにした場合、[ 検索 ] フィールドに指定されたテキストは、テキストが同じ大文字と小文字の場合にのみ、アイテム内のテキストと一致します。 既定では、大文字と小文字の一致は区別されません (大文字と小文字の違いは認識されません)。

[Apply to: Filename only](適用先: ファイル名のみ)

ファイル名の部分だけを (ファイル拡張子は含まれません)、操作によって変更します。 たとえば、 txt.txt を→ NewName.txtします。

[Apply to: Extension only](適用先: 拡張子のみ)

ファイル拡張子だけを操作によって変更します。 たとえば、 txt.txt を→ txt.NewExtensionします。

インクルード ファイル

オフにすると、ファイルは操作に含まれません。

フォルダーを含める

オフにすると、フォルダーは操作に含まれません。

[サブフォルダーを含める]

オフにすると、フォルダー内のファイルは操作に含まれません。 既定では、すべてのサブフォルダー項目が含まれます。

テキストの書式設定

4 つのオプションのいずれかを選択して、すべて小文字、すべて大文字、タイトル ケース (名前の最初の文字を大文字にする)、または各単語の最初の文字を大文字に、項目を変換します。

項目の列挙

操作で変更されたファイル名に数字のサフィックスを追加します。 例: foo.jpgfoo (1).jpg

ファイル作成日時を使用して置換する

次の表に従って変数パターンを入力することで、ファイルの作成日時属性を "置換後" のテキストで使用できます。 "置換後" フィールドでヒントを選択すると、サポートされているパターンを表示して選択できます。

変数パターン 説明
$YYYY 使用されているカレンダーに応じて、4 桁または 5 桁の数字で表される年。
$YY 最後の 2 桁のみで表される年。 1 桁の年の場合、先頭にゼロが追加されます。
$Y 最後の桁のみで表される年。
$MMMM 月の名前。
$MMM 月の省略名。
$MM 数字の月 (1 桁の月は先頭にゼロが付きます)。
$M 数字の月 (1 桁の月は先頭にゼロが付きません)。
$DDDD 曜日の名前。
$DDD 曜日の省略名。
$DD 数字の日付 (1 桁の日は先頭にゼロが付きます)。
$D 数字の日付 (1 桁の日は先頭にゼロが付きません)。
$hh 時 (1 桁の時は先頭にゼロが付きます)。
$h 時 (1 桁の時は先頭にゼロが付きません)。
$mm 分 (1 桁の分は先頭にゼロが付きます)。
$m 分 (1 桁の分は先頭にゼロが付きません)。
$ss 秒 (1 桁の秒は先頭にゼロが付きます)。
$s 秒 (1 桁の秒は先頭にゼロが付きません)。
$fff 3 桁すべてで表されるミリ秒数。
$ff 最初の 2 桁だけで表されるミリ秒数。
$f 最初の桁だけで表されるミリ秒数。

たとえば、次のようなファイル名であるとします。

  • powertoys.png、2020/11/02 作成 (11 月 2 日)
  • powertoys-menu.png、2020/11/03 作成 (11 月 3 日)

次のような項目名変更条件を入力します

  • 検索: powertoys
  • 置換: $MMM-$DD-$YY-powertoys

変更後のファイル名は次のようになります。

  • Nov-02-20-powertoys.png
  • Nov-03-20-powertoys-menu.png

正規表現

ほとんどのユース ケースでは、単純な検索と置換で十分です。 ただし、複雑な名前変更タスクでは、さらに多くの制御が必要になる場合があります。 正規表現が役に立ちます。

正規表現では、テキストの検索パターンを定義します。 テキストの検索、編集、操作に使用できます。 正規表現によって定義されたパターンは、特定の文字列に対して 1 回、複数回、または 0 回一致する場合があります。 PowerRename では、最新のプログラミング言語で一般的な ECMAScript 文法が使用されます。

正規表現を有効にするには、[Use Regular Expressions](正規表現を使用する) チェック ボックスをオンにします。

注: 正規表現を使用するときは、通常、[Match all occurrences](すべての出現箇所を一致させる) をオンにします。

標準ライブラリの代わりに Boost ライブラリを使用するには、PowerToys の設定で [Use Boost library](Boost ライブラリを使用する) オプションをオンにします。 これにより、lookbehind などの、標準ライブラリではサポートされていない拡張機能が有効になります。

正規表現の例

単純な一致の例

検索 説明
^ ファイル名の先頭と一致する (サイズ 0)
$ ファイル名の末尾と一致する (サイズ 0)
.* 名前のすべてのテキストと一致する
^foo "foo" で始まるテキストと一致する
bar$ "bar" で終わるテキストと一致する
^foo.*bar$ "foo" で始まり "bar" で終わるテキストと一致する
.+?(?=bar) "bar" までのすべてと一致する
foo[\s\S]*bar "foo" から "bar" までのすべてと一致する

照合と変数の例。 キャプチャ グループはかっこ () で囲んで定義します。 それらを参照するには、数値の後に続けて $ を使用します。$1 は最初のグループを参照し、$2 は 2 番目のグループを参照し、以下同様になります。

"変数を使用する場合は、[Match all occurrences](すべての出現箇所を一致させる) オプションを有効にする必要があります。"

検索 置換後の文字列 説明
(.*).png foo_$1.png PNG ファイルの既存のファイル名の前に "foo_" を付加します
(.*).png $1_foo.png PNG ファイルの既存のファイル名に "foo_" を付加します
(.*) $1.txt 既存のファイルに ".txt" 拡張子を追加します
(^\w+\.$)\|(^\w+$) $2.txt 既存のファイル名に拡張子がない場合にのみ、".txt" 拡張子を追加します
(\d\d)-(\d\d)-(\d\d\d\d) または (\d{2})-(\d{2})-(\d{4}) $3-$2-$1 ファイル名の数字を移動します。"29-03-2020" が "2020-03-29" になります
^(.{n})(.*) または (.*)(.{n})$ $1foo$2 "foo" n 文字をそれぞれ先頭または末尾に挿入します
^.{n} または .{n}$ なし "foo" n 文字をそれぞれ先頭または末尾からトリミングします。

正規表現を学習するための他のリソース

オンラインで利用できる便利な例やチートシートがあります

正規表現チュートリアル — 例ごとのクイック チートシート

ECMAScript 正規表現チュートリアル

ファイル リスト フィルター

PowerRename でフィルターを使用して、名前変更の結果を絞り込むことができます。 予想される結果を確認するには、[Preview](プレビュー) ウィンドウを使用します。 フィルターを切り替えるには列見出しをクリックします。

  • [Original](名前変更前): [Preview](プレビュー) ウィンドウの最初の列では、次の切り替えを行います。

    • オン: ファイルの名前を変更するように選択されています
    • オフ: ファイルは名前を変更するように選択されていません (検索条件に入力した値に適合していても)
  • 名前を変更すると、[ プレビュー ] ウィンドウの 2 番目の列を切り替えることができます。

    • 既定のプレビューでは、選択したファイルすべてが表示され、"検索" 条件に一致するファイルだけに変更された後の名前が表示されます。
    • [Renamed](名前変更後) ヘッダーを選択すると、名前が変更されるファイルだけにプレビューの表示が切り替えられます。 もともと選択されていた他のファイルは表示されません。

PowerToys PowerRename フィルターのデモ。

設定

次に説明するように、[設定] のタブから PowerRename 追加のオプションを構成できます。

設定 説明
Show PowerRename in (PowerRename を表示) PowerRename を既定のオプションの 1 つとして表示するか、拡張コンテキスト メニューにのみ表示するかを定義します
Enable auto-complete for the search and replace fields (検索および置換フィールドでオートコンプリートを有効にする) PowerRename の以前の使用に基づいて、検索と置換のフィールドで使用する用語を自動的に提案します
Maximum number of items (項目の最大数) 検索と置換で表示する候補の最大数
Show recently used strings (最近使用した文字列を表示する) PowerRename を開くとき、検索と置換のフィールドに、最後に使用した値を設定します
Use Boost library (Boost ライブラリを使用する) RegEx の拡張機能を有効にします。 詳しくは、上の「正規表現」をご覧ください