【Windows】エクスプローラーの「詳細」タブに表示されるメタデータをコマンドで一括編集する手順

【Windows】エクスプローラーの「詳細」タブに表示されるメタデータをコマンドで一括編集する手順
🛡️ 超解決

ビジネスで大量のファイルを扱う際、エクスプローラーの詳細タブに表示されるメタデータを手作業で編集するのは非常に手間がかかります。ファイル整理や情報検索の効率を上げるには、これらのプロパティを一括で変更したいと考えるでしょう。この記事では、PowerShellスクリプトを活用し、Windows 11とWindows 10でファイルのメタデータを効率的に一括編集する具体的な手順を解説します。この手順で、ファイルの管理作業を大幅に効率化できます。

【要点】エクスプローラーのメタデータをコマンドで効率的に編集する方法

  • PowerShellスクリプトの作成: COMオブジェクトを利用して、ファイルの詳細プロパティを一括で設定できます。
  • プロパティIDの活用: タイトルや作成者、コメントなどの各プロパティには固有のIDがあり、これを使って変更対象を指定します。
  • コマンドプロンプトからの実行: 作成したPowerShellスクリプトは、コマンドプロンプトから簡単に実行できます。

ADVERTISEMENT

エクスプローラーの詳細タブとメタデータ編集の基礎知識

エクスプローラーの詳細タブには、ファイルに関するさまざまな情報が表示されます。ファイル名やサイズ、最終更新日などの基本的な情報に加え、画像ファイルであれば「撮影日時」や「カメラメーカー」、文書ファイルであれば「作成者」や「タイトル」「コメント」「タグ」といった詳細なメタデータも確認できます。

これらのメタデータは、ファイルを分類したり、特定の条件で検索したりする際に非常に有用です。手動で一つずつ編集することも可能ですが、ファイル数が多くなると現実的ではありません。コマンドラインを使った一括編集は、このような場面で作業時間を大幅に短縮し、ヒューマンエラーを減らすことにつながります。

メタデータの一括編集には、Windowsに標準搭載されているPowerShellが最も適しています。PowerShellはスクリプトを記述することで、複数のファイルに対して複雑な処理を自動化できるためです。本記事では、このPowerShellを活用した手順を解説します。

PowerShellスクリプトでファイルプロパティを一括編集する手順

ここでは、PowerShellスクリプトを使用して、エクスプローラーの詳細タブに表示されるファイルのメタデータを一括で編集する手順を説明します。事前に編集したいファイルが含まれるフォルダーのバックアップを取ることを強く推奨します。

  1. PowerShellの実行ポリシーを確認する
    PowerShellスクリプトを実行するには、実行ポリシーの設定が必要です。管理者権限でPowerShellを起動し、以下のコマンドを実行して現在のポリシーを確認します。
    Get-ExecutionPolicy
    もし「Restricted」と表示される場合は、スクリプトの実行を許可するためにポリシーを変更します。一時的に変更する場合は「RemoteSigned」が推奨されます。
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    変更の確認メッセージが表示されたら「Y」と入力してEnterキーを押します。
  2. PowerShellスクリプトを作成する
    テキストエディター、例えばメモ帳を開き、以下のスクリプトをコピーアンドペーストします。
$targetFolderPath = "C:\Users\YourUser\Documents\TargetFiles" # 対象フォルダーのパスを指定

# メタデータを変更するファイルの種類を指定することも可能
$fileExtension = "*.jpg" # 例: JPGファイルのみ対象
# $fileExtension = "*.docx" # 例: DOCXファイルのみ対象
# $fileExtension = "*" # 例: すべてのファイルが対象

$files = Get-ChildItem -Path $targetFolderPath -Include $fileExtension -File

$shell = New-Object -ComObject Shell.Application

foreach ($file in $files) {
    $folder = $shell.NameSpace($file.DirectoryName)
    $item = $folder.ParseName($file.Name)

    # 各プロパティIDと設定値の例
    # プロパティID一覧 (代表的なもの):
    #   10: タイトル
    #   11: 件名
    #   12: 作成者
    #   13: タグ
    #   15: コメント
    #   26: 著作権
    #   27: 評価 (1-5の数値)
    #   28: アーティスト
    #   31: アルバム
    #   33: ジャンル
    #   34: 年

    # ここに変更したいプロパティと値を記述します
    # 例1: タイトルを変更
    $item.SetDetailsOf(10, "新しいタイトル")

    # 例2: 作成者を変更
    $item.SetDetailsOf(12, "自分の名前")

    # 例3: コメントを追加/変更
    $item.SetDetailsOf(15, "このファイルは重要なドキュメントです")

    # 例4: タグを追加/変更 (セミコロンで複数指定)
    $item.SetDetailsOf(13, "業務;重要;2024")

    Write-Host "ファイル $($file.Name) のメタデータを更新しました。"
}

Write-Host "すべてのファイルのメタデータ更新が完了しました。"
  1. スクリプトを保存する
    作成したスクリプトを「Edit-Metadata.ps1」などのわかりやすい名前で保存します。ファイルの種類は「すべてのファイル」、拡張子は「.ps1」とします。保存場所はデスクトップなど、アクセスしやすい場所がよいでしょう。
  2. スクリプトを実行する
    保存したスクリプトファイルを右クリックし、「PowerShellで実行」を選択します。または、PowerShellを起動し、スクリプトファイルのパスを指定して実行します。
    .¥Edit-Metadata.ps1
    スクリプトが実行されると、指定したフォルダー内のファイルのメタデータが自動的に更新されます。

コマンドプロンプトからPowerShellスクリプトを実行する手順

PowerShellスクリプトは、コマンドプロンプトから呼び出すことも可能です。これにより、既存のバッチファイルや他の自動化スクリプトに組み込むことができます。

  1. コマンドプロンプトを開く
    Windows 11またはWindows 10で、スタートメニューを右クリックし、「ターミナル 管理者」または「コマンドプロンプト 管理者」を選択して開きます。
  2. PowerShellスクリプトを実行するコマンドを入力する
    コマンドプロンプトで、以下の形式でPowerShellスクリプトを実行します。<スクリプトのパス>の部分は、先ほど保存した「Edit-Metadata.ps1」ファイルのフルパスに置き換えてください。
    powershell.exe -ExecutionPolicy RemoteSigned -File "C:\Users\YourUser\Desktop\Edit-Metadata.ps1"
    -ExecutionPolicy RemoteSignedは、スクリプトの実行ポリシーを一時的に「RemoteSigned」に設定するオプションです。これにより、スクリプトが署名されていない場合でも実行できます。
  3. Enterキーで実行する
    コマンドを入力したらEnterキーを押して実行します。PowerShellスクリプトが起動し、指定されたファイルのメタデータが一括で更新されます。

ADVERTISEMENT

メタデータ編集時の注意点とよくある失敗

ファイルの種類によって設定できないプロパティがある

すべてのファイルタイプが、すべてのメタデータプロパティに対応しているわけではありません。例えば、テキストファイルには「撮影日時」は設定できませんし、画像ファイルには「アルバム名」は適用されない場合があります。スクリプト実行前に、対象ファイルのプロパティをエクスプローラーで確認し、どのプロパティが有効か把握しておくことが重要です。

読み取り専用ファイルやアクセス権がないファイルへの対処

ファイルが読み取り専用属性になっている場合や、現在のユーザーにファイルの書き込み権限がない場合、メタデータの変更は失敗します。スクリプトを実行する前に、対象ファイルの読み取り専用属性を解除するか、適切なアクセス権を設定してください。必要に応じて、管理者権限でPowerShellまたはコマンドプロンプトを実行しましょう。

スクリプト実行前に必ずバックアップを取る

メタデータの一括編集は、元の情報を上書きする操作です。一度変更したメタデータは、簡単に元に戻せない場合があります。誤った情報を設定したり、意図しないプロパティを変更したりするリスクを避けるため、スクリプトを実行する前に必ず対象フォルダー全体のバックアップを取ってください。これにより、万が一の問題発生時にも安全にファイルを復旧できます。

PowerShellの実行ポリシーが原因でスクリプトが実行できない

PowerShellの実行ポリシーが「Restricted」に設定されている場合、スクリプトは実行できません。この場合、Set-ExecutionPolicy RemoteSigned -Scope CurrentUserコマンドを使用して、実行ポリシーを一時的に緩和する必要があります。スクリプト実行後、セキュリティを考慮して元のポリシーに戻すことも可能です。

Windows 11とWindows 10でのメタデータ編集機能の違い

n

項目 Windows 11 Windows 10
エクスプローラーのUI モダンなデザインに刷新され、コマンドバーの配置が変更された クラシックなリボンインターフェースが採用されている
手動編集の操作性 「プロパティ」ダイアログの「詳細」タブから手動で編集する 「プロパティ」ダイアログの「詳細」タブから手動で編集する
PowerShellコマンドの互換性 本記事で紹介したPowerShellスクリプトは問題なく動作する 本記事で紹介したPowerShellスクリプトは問題なく動作する
機能上の大きな差異 メタデータ編集に関して、機能面での大きな変更はない メタデータ編集に関して、機能面での大きな変更はない

まとめ

この記事では、PowerShellスクリプトとCOMオブジェクトを活用し、Windows 11およびWindows 10のエクスプローラー詳細タブに表示されるファイルのメタデータを一括編集する手順を解説しました。この方法を導入することで、手作業では困難だった大量のファイルプロパティ変更を効率的に自動化できます。今後は、定期的なファイル整理や特定のプロジェクトでの情報付加に、今回作成したPowerShellスクリプトを応用できるでしょう。ぜひ、業務の効率化に役立ててください。

ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。