Windowsで複数のファイルの名前をバッチで変更する方法
名前を変更したいが、それらを1つずつ調べたくないファイルがたくさんありますか?Windowsには、想像以上に多くの方法が用意されています。
Windowsエクスプローラーだけで1つ以上のファイルの名前を簡単に変更できますが、コマンドプロンプトまたはPowerShellを使用するとさらに多くの名前を変更できます。サードパーティの名前変更ユーティリティを追加すれば、可能性は無限大です。各オプションとその仕組みを見てみましょう。
Windowsエクスプローラーで複数のファイルの名前を変更する
Windowsエクスプローラー(Windows 10ではファイルエクスプローラーとして知られています)は驚くほど強力です。おそらく、単一のファイルの名前を変更する方法を知っているでしょうが、高度なトリックがそれらを基にしているので、基本から始めましょう。
マウスを使用している場合、ファイルの名前を選択して名前を変更する方法は3つ以上あります。あなたはできる:
- クリックしてファイルを選択し、ホームメニューの「名前の変更」ボタンをクリックします。
- クリックしてファイルを選択し、選択したファイルの名前をクリックします。
- ファイルを右クリックし、コンテキストメニューで[名前の変更]を選択します。
また、キーボードを使い続ける場合は、矢印キーを使用して(またはファイル名の入力を開始して)ファイルを選択し、F2キーを押してファイル名を選択します。
ファイル名を選択すると、拡張子ではなくファイル名自体のみが選択されていることがわかります。新しいファイル名を入力できます。
ファイル名の入力が完了したら、Enterキーを押して(または別の場所をクリックして)、新しい名前を保存できます。
ここで興味深い点があります。Tabキーを押してフォルダ内の次のファイル名を自動的に選択し、すぐに新しい名前の入力を開始できるようにすることもできます。この方法でTabキーを押しながら名前を入力し続けると、必要に応じてフォルダ内のすべてのファイルの名前を簡単に変更できます。
同じフォルダ内の多数のファイルの名前を変更していて、それらのファイルが互いに完全に異なる名前を必要としない場合、Windowsはそれらのファイルの名前をまとめて変更する簡単な方法を提供します。一連のファイルを選択することから始めます。Ctrlキーを押しながら複数のファイルを一度に選択するか、Shiftキーを押しながらファイルの範囲を選択できます。ファイルを選択したら、名前変更コマンドの1つ(ホームメニューのボタン、コンテキストメニューのコマンド)を使用するか、F2キーを押します。すべてのファイルが選択されたままであることがわかりますが、グループの最初のファイルの名前が強調表示されるため、新しい名前を入力できます。
ファイルの新しい名前を入力し、Enterキーを押すか、ウィンドウ内の別の場所をクリックします。選択したすべてのファイルは、入力した名前を使用して名前が変更され、括弧内に番号が追加されて区別されます。
コマンドプロンプトから複数のファイルの名前を変更する
それ以上の電力が必要な場合 は、コマンドプロンプトウィンドウでrename
orren
コマンドを使用して1つ以上のファイルにアクセスできます。このコマンドは、*や?などのワイルドカード文字を受け入れます。複数のファイルを照合する場合。これは、多数のフォルダーでいっぱいのフォルダー内の特定の選択したファイルの名前を変更する場合にのみ役立ちます。
目的の場所でコマンドプロンプトウィンドウを開く最も簡単な方法は、最初にファイルエクスプローラーでフォルダーを開くことです。「ファイル」メニューから「コマンドプロンプトを開く」をポイントし、「コマンドプロンプトを開く」を選択します。
単一のファイルの名前を変更するには、次のコマンド構文を使用できます。
ren " current_filename.ext" "new_filename.ext"
ファイル名にスペースが含まれている場合、引用符は重要です。そうでない場合は、引用符は必要ありません。したがって、たとえば、ファイルの名前を「wordfile(1).docx」から「myword file(01).docx」に変更するには、次のコマンドを使用します。
ren "wordfile(1).docx" "my word file(01).docx"
このren
コマンドは拡張子をアドレス指定できるため、複数のファイルの拡張子を一度に変更するためにも使用できます。たとえば、.htmlファイルに変換したい.txtファイルの選択があったとします。次のコマンドを*ワイルドカードと一緒に使用できます(基本的に、任意の長さのテキストは一致と見なされる必要があることをWindowsに通知します)。
ren * .txt * .html
また、ワイルドカードについて説明している間、?を使用していくつかの興味深いことを行うこともできます。ワイルドカード。単一の文字の代わりに使用されます。たとえば、代わりに.htmファイルに変換したい.htmlファイルがたくさんあるとします。次のコマンドを使用して変更を加えることができます。
ren * .html *。???
これにより、Windowsは、拡張子が.htmlのすべてのファイルの名前を変更して、ファイル拡張子の同じファイル名と最初の3文字のみを使用するように指示されます。これにより、フォルダー内のすべての拡張子の「l」が削除されます。
関連:Windowsでバッチスクリプトを作成する方法
そして、これは、他のコマンドや条件を物事に織り込むことによって、より複雑なコマンド、またはバッチスクリプトを構築したい場合に、魔法のようなコマンドラインに対処し始めるだけです。興味があれば、Lagmonsterフォーラムの人々はこのテーマについて素晴らしい記事を書いています。
PowerShellを使用して複数のファイルの名前を変更する
PowerShellは、コマンドライン環境でファイルの名前を変更するためのさらに高い柔軟性を提供します。PowerShellを使用すると、Linuxやその他のUNIXライクなシステムの場合と同じように、PowerShellの用語で「コマンドレット」と呼ばれる1つのコマンドの出力を別のコマンドにパイプできます。必要な2つの重要なコマンドDir
は、現在のディレクトリ内のファイルを一覧表示するコマンドとRename-Item
、アイテム(この場合はファイル)の名前を変更するコマンドです。Dirの出力をRename-Itemにパイプすると、ビジネスが始まります。
目的の場所でPowerShellウィンドウを開く最も簡単な方法は、最初にファイルエクスプローラーでフォルダーを開くことです。[ファイル]メニューから[WindowsPowerShellを開く]をポイントし、[WindowsPowershellを開く]を選択します。
まず、1つのファイルの名前を変更する方法を見てみましょう。そのためには、次の構文を使用します。
名前の変更-アイテム " current_filename.ext" "new_filename.ext"
したがって、たとえば、ファイルの名前を「wordfile.docx」から「My Word File.docx」に変更するには、次のコマンドレットを使用します。
名前の変更-item "wordfile.docx" "My Word File.docx"
簡単です。ただし、PowerShellの真の力は、コマンドレットをパイプでつなぐ機能と、rename-item
コマンドレットでサポートされているいくつかの条件付きスイッチにあります。たとえば、「wordfile(1).docx」、「wordfile(2).docx」などの名前のファイルがたくさんあるとします。
これらのファイル名のスペースをアンダースコアに置き換えて、ファイル名にスペースが含まれないようにしたいとします。次のコマンドレットを使用できます。
dir | 名前の変更-item-NewName {$ _。name-replace ""、 "_"}
dir
そのコマンドレットの一部は、フォルダー内のすべてのファイルを一覧表示し、それらをコマンドレットにパイプします(これが|
シンボルです)rename-item
。この$_.name
部分は、パイプされる各ファイルの代わりになります。-replace
スイッチは交換が起ころうとしていることを示しています。コマンドレットの残りの部分は、スペース(" "
)をアンダースコア("_"
)に置き換える必要があることを示しています。
そして今、私たちのファイルは私たちが望むように見えます。
関連:オタクスクール:PowerShellでWindowsを自動化する方法を学ぶ
ご想像のとおり、PowerShellはファイルの命名に関して非常に強力であり、ここではほんの表面をかじっただけです。たとえば、rename-item
コマンドレットは、また同じような機能を提供しています-recurse
フォルダ内のファイルとそのフォルダ内にネストされ、すべてのフォルダにコマンドレットを適用することができますスイッチ、-force
ロックされたか、そうでなければ利用できませんされているファイルに対して名前の変更を強制することができますスイッチ、さらには-whatif
説明スイッチコマンドレットが(実際に実行せずに)実行された場合はどうなりますか。もちろん、IF/THEN
ロジックを含む、より複雑なコマンドレット構造を構築することもできます。 PowerShell全般については、Geek Schoolガイドrename-item
から、コマンドレットについては、MicrosoftのTechNetライブラリから学ぶことができます。
サードパーティのアプリを使用して複数のファイルの名前を変更する
関連:一括名前変更ツールは、軽量でありながら強力なファイル名前変更ツールです
複数のファイルの名前を一度に変更する強力な方法が必要で、コマンドプロンプトまたはPowerShellコマンドをマスターする準備ができていない場合は、いつでもサードパーティのユーティリティを利用できます。そこには無数の名前変更アプリがあり、それらの多くは優れていますが、Bulk RenameUtilityとAdvancedRenamerの2つの明確なお気に入りがあります。
一括名前変更ユーティリティの使用方法
Bulk Rename Utilityは、雑然としていてやや威圧的なインターフェイスを備えていますが、通常は正規表現や複雑なコマンドラインオプションでしか得られない膨大な数のオプションを公開しています。
ツールをインストールした後、ツールを起動し、名前を変更するファイルに移動して、それらを選択します。
利用可能な多くのパネルの1つ以上でオプションを変更すると、ファイルが一覧表示されている[新しい名前]列に変更のプレビューが表示されます。この例では、4つのパネルに変更を加えました。これらのパネルはオレンジ色で強調表示されているため、何を変更したかがわかりやすくなっています。すべてのファイルの名前を「Wordファイル」に変更し、タイトルケースを使用するようにユーティリティに指示しました。ファイルが作成された日付をYMD形式で追加しました。また、ファイル名の最後に表示され、1から始まり、1ずつ増加し、ファイル名とアンダースコアで区切られた自動ファイル番号も追加しました。そして、それはあなたが一括名前変更ユーティリティでできることのほんの少しです。新しいファイル名の外観に満足したら、「名前の変更」ボタンをクリックするだけです。
ご覧のとおり、ユーティリティは私の単純な要求を簡単に処理しました。
AdvancedRenamerの使用方法
他のお気に入りの名前変更ツールであるAdvancedRenamerも、膨大な数の名前変更メソッドを公開していますが、それらすべてをインターフェイスのパネルとして表示する代わりに、非常にシンプルで強力な構文を使用して名前変更メソッドを作成するように求められます。学ぶのは難しいことではなく、彼らは例とともに良いサポートをしています。このツールは、はるかに使いやすいインターフェイスを備えており、高度なバッチジョブの設定をサポートしているため、複数の名前変更方法を組み合わせて、それらを多数のファイルに適用できます。後で使用するために作成した名前変更メソッドを保存することもできます。
以下の例では、次の構文を使用して名前変更メソッドを作成しました。
Wordファイル____()
これにより、AdvancedRenamerは、すべてのファイルに「Wordファイル」という名前を付け、作成日をYMD形式で追加するように指示されます(各部分をアンダースコアで区切ります)。また、括弧内に増分ファイル番号を追加し、追加の下線で区切ります。
ご覧のとおり、ファイルの名前は希望どおりに変更されています。AdvancedRenamerは、Bulk File Renamerよりも少し急な学習曲線を持っていますが、その見返りとして、ファイル名をより細かく制御できるようになります。
Windowsでファイルの名前を変更する他の方法はありますか?必ずコメントを残して、それについて知らせてください。