PC を使用している場合は、ファイルを比較してコンテンツやバイナリ コードの違いがあるかどうかを確認するために使用できる優れたコマンド ライン ツールにアクセスできます。これから参照するファイル比較 (FC) は、テキスト ファイルまたはバイナリ ファイルの内容を比較する単純なプログラムであり、ASCII テキストと Unicode テキストの両方を比較できます。このツールを使用すると、2 つのファイルまたは 2 つのファイル セットのうち、他のファイルと一致しない行を表示できます。
ファイル比較のスイッチとパラメータ
- /B – このスイッチはバイナリ比較を実行します。
- /C – 大文字と小文字を区別しない比較を行う必要がある場合は、このスイッチを使用します。
- /A – このスイッチにより、FC は相違点の各グループの最初と最後の行のみを表示します。
- /U – ファイルを Unicode テキスト ファイルとして比較するには、このスイッチを使用します。
- /L – ファイルを ASCII テキストとして比較します。
- /N – このスイッチは ASCII でのみ使用できますが、対応するすべての行番号が表示されます。
- /LBn – 「n」を数値に置き換えて、FC が中止する前に読み取る連続する異なる行の量を制限します。数値を指定しない場合のデフォルトは、不一致テキストが 100 行になります。
- /nnnn – ここで「n」を置き換えると、不一致の行が見つかった場合、不一致の後に「n」個の連続した一致行が見つかった場合にのみ処理を続行できることが FC に伝えられます。これは、2 つのファイルが極端に同期しなくなるのを防ぎたい場合に便利です。
- /T – このスイッチは、タブをスペースに展開しないよう FC に指示します。
- /W – このスイッチを使用すると、FC はファイルの比較中に空白 (タブとスペース) を圧縮します。
指定する必要があるパラメーターは 1 つだけですが、そのインスタンスを 2 つ入力する必要があります。これは、ファイルの場所を指定する Pathname パラメーターです。
FC の構文
コマンド プロンプトの他のツールと同様に、適切な構文でコマンドを入力する方法を知っておく必要があります。ファイル比較ツールには、使用できる主なオプションが 2 つあります。 2 つの個別のファイルではなく 2 つのファイル セットを比較する場合は、ワイルドカード (? および *) を使用できます。
![]()
FC [パス名1] [パス名2]
FC [スイッチ] [パス名 1] [パス名 2]
コマンドに応じて、4 つの %errorlevel% 応答のいずれかを受け取ります。
- -1 – 構文が正しくありません。
- 0 – 両方のファイルは同一です。
- 1 – ファイルが異なります。
- 2 – 少なくとも 1 つのファイルが見つかりません。
練習しましょう
始める前に、テストに使用する 3 つのサンプル テキスト ドキュメントをダウンロードする必要があります。これらの文書にはそれぞれ、いくつかの類似した単語グループを含むテキストの段落が含まれています。これら 3 つのドキュメントをダウンロードしたら、コンピュータ上の任意のフォルダにコピーできます。このチュートリアルでは、すべてのテキスト ドキュメントをデスクトップに置きます。
ここで、管理者特権のコマンド プロンプト ウィンドウを開く必要があります。 Windows 7 および 10 でスタート メニューを開くか、Windows 8 で検索機能を開いて CMD を検索します。次に、それを右クリックし、「管理者として実行」を押します。管理者特権でコマンド プロンプト ウィンドウを開く必要はありませんが、煩わしい確認ダイアログ ボックスを避けるのに役立ちます。
今日のチュートリアルでは、以下で詳しく説明するいくつかの簡単なシナリオを取り上げます。
- ファイル比較を使用して、同じフォルダー内の 2 つのテキスト ファイルを比較します。
- 「/lbn」スイッチを使用したファイル比較を使用して、同じフォルダー内のファイルを比較します。
- 2 つの同一のファイルを比較します。
- 2 つの異なるファイルと 2 つの同一のファイルのバイナリ比較を実行します。
シナリオ 1 – ファイル比較を使用して 2 つのテキスト ファイルを比較します。
コマンド プロンプト ウィンドウが開き、デスクトップにテキスト ファイルが配置されたので、簡単なファイル比較を行う準備が整いました。このセクションでは、基本的な比較を行ってから、いくつかの異なるオプションを追加します。まず、次のコマンドを入力して、「FCsample」と「FCexercise」の内容を比較します。パス名はお使いのコンピュータに一致する名前に置き換えてください。また、コマンド プロンプトでは大文字と小文字が区別されないことに注意してください。
fc C:\Users\Martin\Desktop\FCsample.txt C:\Users\Martin\Desktop\FCexercise.txt
この場合、両方のドキュメントが適切に一致しないため、両方のドキュメントのテキストがすべて表示されます。
シナリオ 2 – 「/lbn」スイッチを使用したファイル比較を使用して、同じフォルダー内のファイルを比較します。
ここで、2 行の不一致データの後で停止するように FC に指示する別の比較を試してみましょう。これを行うには、「/lbn」スイッチを追加します。
fc /lb2 C:\Users\Martin\Desktop\FCsample.txt C:\Users\Martin\Desktop\FCexercise.txt
ご覧のとおり、「再同期に失敗しました。」というエラー メッセージが表示されます。ファイルが違いすぎます。」これは、不一致データが 2 行以上連続して存在するためです。数値を変更したり、ファイルを自分で編集したりして、ファイル比較ツールを使ってどのような結果が得られるかを確認してください。
シナリオ 3 – 2 つの同一のファイルを比較します。
ダウンロードしたファイルには、「FCexercise」と「FCexercise2」という 2 つのファイルがあります。これら 2 つのファイルの内容はまったく同じであるため、比較を実行して、どのような結果が得られるかを確認します。
fc C:\Users\Martin\Desktop\ FCexercise.txt C:\Users\Martin\Desktop\FCexercise2.txt
上の画像からわかるように、FC は違いが見つからなかったと報告しています。 1 つのファイルを編集し、1 文字を追加してコマンドを再試行すると、結果は次の画像のように表示されます。変更されたのは文字「a」の追加だけであることに注意してください。
シナリオ 4 – 2 つの異なるファイルと 2 つの同一のファイルのバイナリ比較を実行します。
この例では、「FCexercise」ファイルと「FCsample」ファイルのバイナリ比較を実行します。
fc /b C:\Users\Martin\Desktop\ FCexercise.txt C:\Users\Martin\Desktop\sample.txt
この関数は、2 つのファイルが比較されていることを通知することから始まることがわかります。次に、多数のバイナリ数字が並べてスクロールされ、そこでファイルが比較され、最後に、FCexercise が FCsample よりも長いというレポートが表示されます。 次の例では、「FCexercise」ファイルと「FCexercise2」ファイルのバイナリ比較を実行します。
fc /b C:\Users\Martin\Desktop\ FCexercise.txt C:\Users\Martin\Desktop\FCexercise2.txt
この 2 つの同一ファイルの比較では、FC は 2 つのファイル間に違いがないことを報告します。 FC ツールの基本は理解できたので、自由にスイッチを操作して新しいアイデアを試してみましょう。ファイルを操作するときは、偶発的なデータ損失を避けるために、ここで提供されているようなダミー サンプルを使用することが最善であることに注意してください。
画像クレジット: Nikki on Flickr





