超詳しい!PowerShellで重複ファイルを検索し削除する方法
13
0
Key Takeaways
PowerShellはWindows PCに標準搭載されていて、他のOSでも利用可能なソフトで、重複ファイルを検出し削除する機能があります。
技術的な知識があり、コマンド操作に慣れている方の場合、このソフトを使ってWindowsの重複ファイルを削除するのがおすすめです。ただし、削除前にファイルをプレビューで確認できませんのでご注意ください。
コマンドラインに詳しくない方、重複ファイルを削除する前にプレビューして確認したい方の場合、別の方法を選択するのがおすすめです。
重複ファイルが増えると、ストレージを圧迫するだけでなく、目的ファイルの検索にも手間がかかります。これらの重複ファイルを見つけて削除する方法はいくつかあり、PowerShellを使うのも効果的な手段の一つです。
この記事では、PowerShellを使ってフォルダにある重複ファイルを削除する操作手順を詳しく紹介します。
Cisdem Duplicate Finder
PowerShellを使うのが不安?このソフトを使ってみましょう
- 重複した画像、動画、音楽などのファイルを正確に見つけ出す
- 類似画像にも対応し、AI類似画像検出エンジンも搭載
- Windows PC、Mac、外付けHDD、クラウドストレージなどに対応
- フォルダ、iTunesライブラリ、Mac写真アプリにある重複ファイルに対応
- 3つのプレビューモードを提供し、重複画像を並べて確認可能
- 削除する重複ファイルを一括で選択し削除できる
- 手動で選択を変更したり、自動選択ルールを変更したりするのが可能
- 誰でも簡単に使える
PowerShellとは?
PowerShellは、Microsoftが提供する強力ソフトで、様々なタスクの実行にサポートしてくれます。コマンドラインツールとして考えて問題ありません。このツールでスクリプトを作成し、ファイルの管理やメールの送信を簡単に自動化できます。
PowerShellを使ってファイルのハッシュ値を比較し、重複ファイルを見つけ出すのが可能です。そして手動でこれらの重複ファイルを削除するか、PowerShellを使って自動削除することができます。
補足情報
ハッシュとは、ファイルの内容に対応する固有の値です。2つのファイルに同じハッシュ値を持っている場合、重複ファイルであると判断できます。
PowerShellで重複ファイルを検索するメリットとデメリット
PowerShellを使うメリットとデメリットが以下になります。
メリット
- ファイル名が違う重複ファイルを検出できる
- 各グループの最初の1ファイルだけを残して、残りのすべての重複ファイルを自動的に削除できる
- Windowsに標準搭載されていて、完全無料で利用可能
デメリット
- パソコンの操作に詳しくないユーザにとって難しい
- コマンドラインを利用する必要があるため、間違えると問題が発生したり、重複ファイルを見落としたりする可能性がある
- 削除する前に重複ファイルをプレビューするのができない
- どのファイルを削除するか、どのファイルを残すかを選択できない
- 重複ファイルが完全に削除されてしまうため、復元するのが難しい
筆者の見解
この方法は、技術的な知識・プログラミングの知識がないと少し複雑に感じるかもしれません。基礎的なパソコン知識しか持っていない方の場合、もっと簡単に利用できる重複ファイル検索専門ソフトを使うのがおすすめです。
PowerShellを使ってフォルダにある重複ファイルを検索し削除する方法
1. スタートメニューで「PowerShell」を検索し見つけ、管理者として実行します。

2. 「cd」コマンド(「change directory」、現在のフォルダ位置を変更するコマンド)で重複ファイルを検索したいフォルダへ移動します。
例えば「ダウンロード」フォルダにある重複ファイルを検索したい場合、以下のコマンドを使います。
cd C:\Users\YourUsername\ Downloads
「Enter」キーを押します。

以下のコマンドを実行し、フォルダにあるすべてのファイルのハッシュ値を計算して、重複ファイルを探します。
Get-ChildItem -Recurse | Get-FileHash | Group-Object -Property Hash | Where-Object { $_.Count -gt 1 } | Select-Object -ExpandProperty Group | Select-Object -ExpandProperty Path
注意
PowerShellでファイルを開いたりプレビューしたりすることができないため、重複ファイルを確認するには、エクスプローラを起動し、そのファイルを見つけてから開く必要があります。

4. 以下のコマンドを実行し、各グループの重複ファイルから1つ目のファイルだけを残し、残りのファイルをすべて削除します。
Get-ChildItem -Recurse | Get-FileHash | Group-Object -Property Hash | Where-Object { $_.Count -gt 1 } | foreach {
$group = $_.Group | Select-Object -ExpandProperty Path
$group | Select-Object -Skip 1 | Remove-Item -Force
}
Enterキーを押します。重複ファイルが存在していたフォルダを確認しましょう。重複ファイルがすべて削除されました。
注意
これらの重複ファイルは完全に削除されます。つまり、ゴミ箱に移動されません。誤削除に備えて、大切なファイルを前もってバックアップを取るのがおすすめです。
もっと簡単に重複ファイルを削除する方法
PowerShellは標準アプリで、完全無料で利用できるとは言え、操作が難しく、ファイルをプレビューできないというデメリットがあります。もっと簡単に重複ファイルを検索し削除したい場合は、 Cisdem Duplicate Finderを使ってみましょう。
PowerShellと比べて、Cisdem Duplicate Finderのメリット:
- 1つのフォルダを検索するか、複数のフォルダをまたいて検索することが可能
- ファイルのハッシュ値とサイズ両方を比較し、重複ファイルを正確に見つけ出す
- 見つけた重複ファイルを画像、動画、音楽、ドキュメントなどのカテゴリに分類する
- 3つのプレビューモードを提供し、画像を並べて確認できる
- ファイルの保存パスやサイズなど、詳細情報を確認可能
- 重複ファイルを自動的に選択し、一括で削除できる
- 自動選択ルールを変更可能
- 手動で選択した重複ファイルを調整できる
- デフォルトでは重複ファイルをゴミ箱に移動する(指定フォルダに移動するか、完全に削除するかも選択可能)
Cisdem Duplicate Finderを使って重複ファイルを削除する操作手順
1. Cisdem Duplicate Finderをダウンロード、インストールし、起動します。
無料ダウンロードWindows 10及び以降
無料ダウンロードmacOS 10.11及び以降
2. 「ローカルファイルスキャン」項目で検索したいフォルダやドライブを追加します。直接ドラッグ&ドロップで追加できます。

3. スキャンが高速に終わります。結果画面が表示されます。完全に重複するファイルは自動的に選択され済みで、直接「削除」をクリックして一括削除するか、プレビューしてから削除するのが可能です。
プレビューモードを変更し、ファイルの詳細情報を確認することもできます。

プレビューモードを変更し、ファイルの詳細情報を確認することもできます。
4. 自動選択ルールを変更することもできます。

5. 削除する重複ファイル選択完了後、右下隅の「削除」ボタンをクリックします。

よくある質問
Windowsに標準搭載の重複ファイル検索ツールがあるか?
ありません。Windowsにはこのようなツールが標準搭載されていません。PoweShellで重複ファイルを削除することができるとは言え、PoweShell自体を「重複ファイル検索ツール」と呼ぶのが適切ではありません。
PoweShellで重複ファイルを削除するにはどうすればいい?
上記で紹介した、専用のコマンドを実行することで重複ファイルを削除します。
まとめ
PowerShellでフォルダにある重複ファイルを削除することが可能です。この記事では、PowerShellを使ってファイル名が異なる重複ファイルを検索し削除する方法を詳しく紹介しました。
また、PowerShell以外にも、専門な重複ファイル削除ソフトを使って、簡単かつ素早く重複ファイルを検出し削除する方法も紹介しました。
どの方法を選んでも、パソコンの空き容量を確保するのに、定期的にファイルを整理し、重複ファイルを削除するのが一番です。
Adrian LiはCisdemのチーフエンジニアであり、Duplicate FinderおよびContactsMateの編集顧問を務めています。彼の業績と洞察は、Fossbytes、TUAW、Redmond Pie、SafetyDetectives、BestForAndroidなどの主要なテクノロジー出版物で紹介されています。




