ソフトウェア
 Computer >> コンピューター >  >> ソフトウェア >> ソフトウェア

Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド

2つのフォルダーの中身をひとつずつ開かずに比較できたら便利ですよね。この記事では、Windowsでそれを実現するいくつかの方法をご紹介します。

もちろん、各フォルダーを手動で開いてファイルを確認することもできますが、特にバックアップのように似たファイルが入った数十、数百のフォルダーを調べる場合には非常に非効率です。こうしたシナリオには、もっと賢いアプローチが必要です。

プロパティウィンドウを使う方法

フォルダーの詳細を手軽に確認する最も簡単な方法は、プロパティを見ることです。フォルダーを開いて中身を一つずつ眺める必要はありませんが、確認したいフォルダーごとに右クリックしてプロパティを開く作業は必要です。

そのため大規模な比較には向きませんが、一般の家庭ユーザーにとっては十分でしょう。各フォルダーのサイズやファイル数を知りたいだけであれば、プロパティウィンドウで事足ります。

  1. フォルダーのプロパティウィンドウを開くには、対象のフォルダーを右クリックし、メニューから「プロパティ」を選択します。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 小さなウィンドウが開き、フォルダーのサイズ、含まれるファイルやフォルダーの数、作成日時などの詳細情報が表示されます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 別のフォルダーと比較するには、このウィンドウを画面の端に寄せておき、同じ操作をもう一方のフォルダーに対しても行います。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. これで2つのプロパティウィンドウが並んで表示され、直接比較できるようになります。画面サイズが許せば、さらに多くのフォルダーのプロパティを開いて並べることも可能です。

WinMergeを使う方法

プロパティウィンドウ以外にもWindowsでファイルやフォルダーを比較する方法はありますが、ここではあえてサードパーティ製ツールを先に紹介します。その理由は、はるかに簡単だからです。

正直なところ、ちょっとした作業のためにコマンドプロンプトを叩いたりPowerShellスクリプトを書いたりしたい人は多くありません。これらの方法には確かに有用性があります(特にシステム管理の場面では)が、ほとんどのエンドユーザーには専用のファイル比較ツールの方が扱いやすいでしょう。

そこで登場するのがWinMergeです。同種のアプリケーションは多数存在しますが、WinMergeは断トツの人気を誇ります。無料ツールなので、フォルダー比較が必要になったときにダウンロードして使っても費用は一切かかりません。

名前で混乱しないでください。主な用途はフォルダーのマージですが、比較機能もしっかり備えています。

  1. WinMergeでフォルダー比較を始めるには、公式サイトからソフトウェアをダウンロードします。複数のインストーラーが用意されていますが、通常は一番上のものを選ぶのがおすすめです。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. ダウンロードしたセットアップファイルを実行して、WinMergeをPCにインストールします。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. WinMergeを起動すると、まだフォルダーが選択されていないため空のウィンドウが表示されます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 「ファイル」>「開く」を選択するか、ツールバーの専用アイコンをクリックしてフォルダーを開きます。キーボードのCtrl + Oでも操作できます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 最大3つのフォルダーを同時に開いて比較することができます。各項目の下にある「参照」ボタンをクリックして、比較対象のフォルダーを選択してください。比較には最低2つ必要で、3つ目は任意です。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. この方法で遭遇しやすい問題として、ダイアログが目的のフォルダーを開けないケースがあります。その場合は、対象フォルダーを右クリックして「パスのコピー」を選択し、テキスト欄に貼り付ければ解決できます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 入力が完了したらEnterキーを押します。WinMergeが指定したフォルダー内を走査し、ファイルを比較して関連情報をすべて収集します。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. スキャンが完了すると、ファイルが見やすい形式で一覧表示されます。片方にしか存在しないファイルは、所属するフォルダーに応じて「左のみ」または「右のみ」に分類されます。同一のファイルは赤色で強調表示され、両方の作成日時が一度に確認できます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド

コマンドプロンプトを使う方法

サードパーティ製ツールを除けば、Windowsにもファイル比較用のユーティリティがいくつか用意されています。残念ながらCMDコマンドのためGUIはありませんが、ターミナル画面さえ苦手でなければ、robocopyコマンド(そう、これが正式なコマンド名です)は強力な武器になります。

プロパティウィンドウはフォルダーを一目で比較するのに適していますが、中身の内容や違いまではあまり分かりません。バックアップフォルダーを比較する際には、固有のファイルを素早く特定する必要があるため、これは大きな問題になります。そんなときこそrobocopyコマンドの出番です。

  1. ターミナルでフォルダーを比較するには、まずコマンドプロンプトを開きます。スタートメニューに「cmd」と入力してアプリを起動しましょう。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 続いてrobocopyコマンドを使ってディレクトリを比較します。このコマンドは本来ファイルのコピー用なので、比較モードに切り替えるためのフラグを追加する必要がある点に注意してください。
  2. まず「robocopy」に続けて、比較したい2つのフォルダーのパスを入力します(フォルダーを右クリックして「パスのコピー」を選ぶと簡単に取得できます)。以下のような形です:
    robocopy "C:\Users\lloyd\Documents" "C:\Users\lloyd\Downloads"
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 次に、以下のフラグをコマンド末尾に追加します
    /L /NJH /NJS /NP /NS
    最終的なコマンドは次のようになります:
    robocopy "C:\Users\lloyd\Documents" "C:\Users\lloyd\Downloads" /L /NJH /NJS /NP /NS
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. すべて入力できたらEnterキーを押します。ディレクトリの内容が比較され、差分の概要が表示されます。最初のフォルダーにのみ存在するファイルは「New File」に、2番目のフォルダー側の差分ファイルは「Extra File」に分類されます。同一のファイルは、最初のディレクトリにおける作成日時に基づいて「Older」または「Newer」に振り分けられます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド

PowerShellを使う方法

Windowsのコマンドベースのインターフェースはコマンドプロンプトだけではありません。PowerShellはより現代的で強力なスクリプティング環境であり、Windowsのほとんどのタスクを自動化できるのはもちろん、フォルダー比較にも活用できます。

ただしコマンドプロンプトとは異なり、PowerShellにはフォルダー比較専用のコマンドが用意されていません。代わりに、複数のコマンドを組み合わせて2つのディレクトリの差分を取得する必要があります。

具体的には、まずGet-ChildItemコマンドを両方のディレクトリに対して再帰的に実行し、それぞれの結果を別々の変数に格納します。その後、Compare-Objectコマンドでデータを比較し、差分を一覧表示します。

コマンドプロンプトより複雑に感じられるなら、実際その通りです。ただしPowerShellの最大の利点は、数百、数千のフォルダーへも簡単にスケールできる点にあります。

  1. 強力なスクリプティングユーティリティでフォルダー比較を始めるには、スタートメニューで「PowerShell」を検索して実行します。通常はPowerShell統合スクリプティング環境(PowerShell ISE)が開きます。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. PowerShellウィンドウが空白のスクリプト状態で開き、コマンドプロンプトと同様にユーザーディレクトリが初期位置となります。
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 1つ目のフォルダーのパスに対してGet-ChildItemコマンドを再帰的に実行し、結果を変数に格納します。以下のように記述します:
    $folder1 = Get-ChildItem -Recurse -Path "C:\Users\lloyd\Documents"
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 2つ目のフォルダーについても、別の変数を使って同様に実行します。
    $folder2 = Get-ChildItem -Recurse -Path "C:\Users\lloyd\Downloads"
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド
  1. 最後に、2つの変数に対してCompare-Objectコマンドを使用すると、両者の内容の差分が表示されます。
    Compare-Object -ReferenceObject $folder1 -DifferenceObject $folder2
Windowsでフォルダーを素早く正確に比較する方法:ステップバイステップ完全ガイド

Windowsで2つのフォルダーを比較する最良の方法は?

Windowsには標準で用意されたディレクトリ比較機能が少ないため、最も便利な選択肢はWinMergeのようなサードパーティ製ツールを使うことです。この方法は直感的で柔軟性が高く、圧倒されることなく複数のフォルダーを快適に比較できます。

表面的な比較だけでよいのであれば、フォルダーのプロパティウィンドウを並べて開くだけでも十分かもしれません。フォルダーのサイズや含まれるファイル数を把握するのに手軽で便利です。

しかし、最も強力なディレクトリ比較方法は、やはりスクリプトやコマンドを使うことです。その場合はPowerShellかコマンドプロンプトを活用しましょう。どちらも構文は少し癖がありますが、コマンドをコピーして再利用したり、プロパティ画面からパスをコピーしたりできるので、意外と手間はかかりません。

  1. 【解決】Minecraftでio.netty.channel.AbstractChannel$AnnotatedConnectException「connection refused」エラーが出たときの対処法

    Minecraftのプレイヤーの中には、サーバーへの接続が拒否される「connection refused」エラーに悩まされている方が少なくありません。多くの場合、これはWindows 10でMinecraftがサーバーに接続できないことが原因です。その結果、普段どおりにゲームをプレイできなくなってしまいます。この記事では、この接続エラーの原因と、実用的な解決方法を詳しく解説します。なぜio.netty.channel.AbstractChannel$AnnotatedConnectException「connection refused」エラーが発生するのか?サーバーに接続しようとした際に、

  2. 今こそ実現してほしい!現実に欲しい5つの発明

    未来の発明品について語るとき、「これが本当に存在していたらいいのに」と願うものは数多くありますが、個人的なお気に入りはやはり『スター・ウォーズ』の「ライトセーバー」。いえ、カイロ・レンのあの実用性に欠けるバージョンではなく、オビ=ワン・ケノービが「より文明化された時代のためのエレガントな武器」と評したオリジナルの方です。(オタク歓喜!) 日常で使う場面を想像したらキリがありません。トーストを焼きたい?ズバッ!うるさいハエが飛び回っている?ズバッ!玄関先のしつこいセールスマン?ザップッ!! もちろん本来の用途ではないと分かってはいますが、もし大規模に量産されたら、ユーザーはきっと斬新な使い方を