【Windows】エクスプローラーで「空のフォルダ」だけを一括で探し出して削除する手順

【Windows】エクスプローラーで「空のフォルダ」だけを一括で探し出して削除する手順
🛡️ 超解決

不要な空のフォルダが大量に溜まり、ファイル整理の妨げになったり、ディスク容量をわずかに圧迫したりしていませんか。

Windowsのエクスプローラー標準機能だけでは、空のフォルダを一括で探し出して削除することは困難です。

この記事では、エクスプローラーとPowerShellコマンドを組み合わせ、空のフォルダを効率的に見つけて安全に削除する具体的な手順を解説します。

【要点】不要な空のフォルダを効率的に整理する

  • PowerShellによる空フォルダ検索: 指定したパス内の空のフォルダを正確に特定します。
  • PowerShellによる空フォルダ削除: 特定した空のフォルダを安全に一括で削除します。
  • 削除前の確認作業: 誤って必要なフォルダを削除しないよう、対象を事前に検証します。

ADVERTISEMENT

なぜ空のフォルダの整理が必要なのか

Windows環境で作業を続けると、ソフトウェアのインストールやファイルの解凍、プロジェクトの完了などによって、中身が空のフォルダが多数発生することがあります。

これらの空のフォルダは、ディスク容量を大きく消費するわけではありませんが、エクスプローラーでの視認性を低下させ、目的のファイルやフォルダを見つけにくくします。

また、バックアップ処理や同期処理の際に、不要なファイルとして処理対象となり、作業時間をわずかに延長させる要因となることもあります。

エクスプローラーの標準的な検索機能では、フォルダ内のファイル数を直接検索することはできません。

そのため、手動でひとつずつフォルダを開いて確認する作業は非常に非効率的です。

PowerShellを活用することで、このような空のフォルダを自動的に検出し、一括で安全に削除できます。

空のフォルダを特定し安全に削除する手順

ここでは、PowerShellを使って指定したパス内の空のフォルダを検索し、削除する手順を解説します。

誤って必要なフォルダを削除しないよう、削除前に必ず内容を確認してください。

削除対象フォルダの準備とPowerShellの起動

  1. 対象パスの確認
    空のフォルダを検索・削除したいドライブやフォルダのパスを確認します。
    例えば「C:\Users\ユーザー名\Documents」のようなパスです。
  2. PowerShellを管理者として実行
    Windows 11のスタートボタンを右クリックし、「ターミナル 管理者」または「Windows PowerShell 管理者」を選択します。
    Windows 10の場合は、スタートボタンを右クリックし「Windows PowerShell 管理者」を選択します。
    ユーザーアカウント制御の画面が表示されたら「はい」をクリックして許可します。

PowerShellで空のフォルダを検索する手順

まず、実際に削除する前に、どのフォルダが空と判断されるかを確認します。

以下のコマンドは、指定したパス内の空のフォルダをリストアップします。

  1. 空のフォルダを検索するコマンドの入力
    PowerShellの画面に以下のコマンドを入力し、Enterキーを押します。
    $targetPath = "C:\Users\ユーザー名\Documents"
    Get-ChildItem -Path $targetPath -Recurse -Directory | Where-Object { (Get-ChildItem -Path $_.FullName -Recurse -Force | Measure-Object).Count -eq 0 } | Select-Object FullName
    「C:\Users\ユーザー名\Documents」の部分は、手順1で確認した実際のパスに置き換えてください。
    このコマンドは、指定パス内のすべてのサブフォルダを再帰的に検索し、中身が空のフォルダのみを抽出します。
  2. 検索結果の確認
    表示されたフォルダのパスを確認します。
    これらが削除対象となる空のフォルダです。
    本当に削除して問題ないか、エクスプローラーでいくつかのフォルダを開いて目視で確認することをお勧めします。

PowerShellで空のフォルダを一括削除する手順

検索結果に問題がなければ、以下のコマンドで空のフォルダを削除します。

この操作は元に戻せないため、慎重に行ってください。

  1. 削除対象の最終確認(-WhatIfパラメータの使用)
    削除コマンドを実行する前に、-WhatIfパラメータを付けて試行実行します。
    $targetPath = "C:\Users\ユーザー名\Documents"
    Get-ChildItem -Path $targetPath -Recurse -Directory | Where-Object { (Get-ChildItem -Path $_.FullName -Recurse -Force | Measure-Object).Count -eq 0 } | Remove-Item -Recurse -Force -WhatIf
    このコマンドは、実際に削除はせず、削除される予定のフォルダを表示します。
    表示される内容が意図通りか、再度確認してください。
  2. 空のフォルダを一括削除
    -WhatIfでの確認後、問題がなければ-WhatIfパラメータを削除してコマンドを実行します。
    $targetPath = "C:\Users\ユーザー名\Documents"
    Get-ChildItem -Path $targetPath -Recurse -Directory | Where-Object { (Get-ChildItem -Path $_.FullName -Recurse -Force | Measure-Object).Count -eq 0 } | Remove-Item -Recurse -Force
    このコマンドを実行すると、確認した空のフォルダが削除されます。
    削除が完了しても、特にメッセージは表示されません。

空のフォルダ削除時に注意すべきポイント

PowerShellでのフォルダ削除は強力な操作です。

誤って重要なファイルを削除しないよう、以下の点に注意してください。

重要なフォルダを誤って削除してしまう

原因: 削除対象のパスを誤って指定したり、-WhatIfパラメータでの事前確認を怠ったりした場合に発生します。

対処:

  1. 対象パスの再確認: コマンドを実行する前に、$targetPathに設定したパスが正しいか、エクスプローラーで必ず確認します。
  2. -WhatIfパラメータの活用: 削除コマンドを実行する際は、必ず-WhatIfパラメータを付けて試行実行し、削除対象のリストを目視で確認します。
    この手順を省略しないことが重要です。

削除権限がないフォルダが残ってしまう

原因: 削除対象のフォルダにアクセス権限がない場合、PowerShellがそのフォルダを削除できません。

対処:

  1. 管理者権限での実行: PowerShellを「管理者として実行」していることを確認します。
    ほとんどの権限不足の問題はこれで解決します。
  2. フォルダのアクセス権変更: 特定のフォルダに対してのみ権限がない場合は、そのフォルダのプロパティからセキュリティタブを開き、ユーザーアカウントにフルコントロールの権限を付与します。
    ただし、システムフォルダの場合は慎重に行う必要があります。

隠しファイルやシステムファイルで空と判断されない場合

原因: フォルダ内に隠しファイルやシステムファイルが存在する場合、エクスプローラー上では空に見えても、PowerShellが空でないと判断する場合があります。
これは、Get-ChildItemコマンドに-Forceパラメータが付与されていない場合に起こりえます。

対処:

  1. -Forceパラメータの確認: 記事で紹介したコマンドには-Forceパラメータが含まれています。
    このパラメータは、隠しファイルやシステムファイルも含めて内容をチェックし、より正確に空のフォルダを判断します。
  2. コマンドの再確認: コマンドをコピー&ペーストする際に、-Forceパラメータが欠落していないか確認してください。

ADVERTISEMENT

手動とPowerShellによる空のフォルダ削除の比較

空のフォルダを整理する方法には、手動でエクスプローラーから削除する方法と、PowerShellを利用する方法があります。

それぞれの特徴を比較します。

項目 手動での確認・削除(エクスプローラー) PowerShellによる自動削除
検索精度 手動で個別に確認するため、見落としが発生しやすい コマンドの条件に基づき、空のフォルダを正確に特定する
削除効率 フォルダ数が多い場合、非常に時間がかかる 多数のフォルダを短時間で一括処理できる
安全性 一つずつ確認するため、誤削除のリスクは低い -WhatIfで事前確認すれば安全性が高い。確認を怠るとリスクがある
習得難易度 基本的なマウス操作で実行できる コマンドの知識が必要だが、一度習得すれば応用できる
自動化 基本的に手動操作であり、自動化はできない スクリプト化により、定期的な自動処理が可能

まとめ

この記事では、Windows 11およびWindows 10で、エクスプローラーとPowerShellを組み合わせて空のフォルダを一括で探し出し、安全に削除する手順を解説しました。

PowerShellコマンドと-WhatIfパラメータを活用することで、誤削除のリスクを抑えながら、効率的に不要なフォルダを整理できます。

定期的にこの手順を実行し、Windows環境を快適に保ちましょう。

PowerShellのGet-ChildItemRemove-Itemコマンドを応用すれば、さらに複雑なファイル整理も可能です。

ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

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