結論

差分が出ないことだけで、2つの文書が同じとは限りません。 行の順序や大文字・小文字を比べるかは、比較方法と設定で変わります。Windowsのコマンドでも、文章比較の画面でも、何を一致と呼ぶかが先にある条件です。

文章比較元と変更後を並べて行の追加・削除・変更を見る登録なしで使えます開く

今回は、英字だけの架空テキスト4組で、PowerShellの比較と現行の文章比較を動かしました。Word(ワード)の変更履歴やPDFの見た目を比べた試験ではありません。

標準設定の比較では差分が出ない2例を示した自作図

作例4組で結果の違いを測った

Alpha・Beta・Gammaの3行を元の文章とし、変更後を4通り用意しました(n=4組、2026-10-01)。Windows 10.0.26200、PowerShell 7.6.5でUTF-8ファイルをGet-Contentにより行単位で読み、Compare-Objectを実行しています。

変更後の内容 標準設定の出力件数 現行の文章比較
3行とも同じ 0 差分なし
AlphaとBetaの順序を交換 0 追加1行・削除1行
Alphaだけalphaに変更 0 変更1行
末尾にDeltaを1行追加 1 追加1行

順序交換と大小文字の変更は、標準設定では出力0件でした。今回の結果は、コマンドが故障したという意味ではなく、設定が拾う差の違いです。

さらにCaseSensitiveとSyncWindow 0を指定すると、出力件数は同じ順に0・4・2・1件になりました。4件は4行を編集したという意味ではありません。 順序交換の例では、元側だけ・変更後側だけという出力が2組あります。文章比較が示す追加1・削除1とも、件数の単位が異なります。

Pythonでも各入力の行を取り出し、順序を含む一致、大小文字を無視した行の個数、同じ位置の行を比較した出力件数を別計算しました。4組の結果と、文章比較の操作列から元と変更後の両方を戻せることが一致しました。

行として読む範囲と比較設定を分ける

Get-Contentの通常の読込みは行単位です。Microsoftの説明も次のとおりです。

今回のコマンドの形は次のものです。old.txtとnew.txtは、比較用のローカルファイル名の例です。

powershell Compare-Object (Get-Content -LiteralPath '.\old.txt' -Encoding utf8) (Get-Content -LiteralPath '.\new.txt' -Encoding utf8) -CaseSensitive -SyncWindow 0

CaseSensitiveは英字の大小文字を区別する指定です。公式説明は、次の短い記述になっています。

SyncWindowの既定値では、同じ位置にない要素も探します。0を指定した今回の比較では、行の位置の違いが結果に現れました。 ただし、途中に行が挿入された大きな文書を、人が読みやすい最小の変更箇所として示すことを保証する指定ではありません。

比較の出力件数と行数を区別する自作図

fc.exeの終了コードも確認した

Windowsのfc.exeも、同じ4組を/nで実行しました。今回はASCII文字だけの入力です。結果は、同一の組が終了コード0、残る3組が1でした。公式表はコード1を一次資料の節に引用したとおり説明しています。

コード1は差分あり、コード2は比較中のエラーと分かれます。PowerShellではfcという略記が別名として扱われる場合があるため、今回もfc.exeという実行ファイル名を使いました。

/nは行番号を添える指定です。今回の試験から、日本語のすべての文字コード、バイナリ、Word・PDFの表示比較まで対応済みとは説明していません。ブラウザの文章比較も、貼り付けたテキストが対象で、書式・注釈・電子署名を比較するものではありません。

一次資料

本文で参照した一次資料の引用と出典をまとめます。

“the content is read one line at a time”

— Microsoft Learn「Get-Content」Description https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-content?view=powershell-7.6(2026-10-01 到達)

“Indicates that comparisons should be case-sensitive.”

— Microsoft Learn「Compare-Object」CaseSensitive https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/compare-object?view=powershell-7.6(2026-10-01 到達)

“Files are different.”

— Microsoft Learn「fc」Exit codes https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/fc(2026-10-01 到達)

測っていないこと・ここから先は推論

実際の社内文書、社内端末の実行権限、通信や導入規則は測っていません。 ASCIIの短い4組だけを実行しました。Windows PowerShell 5.1、VS Code、サクラエディタ、WinMerge、日本語の正規化、改行コード差、空ファイル、大量行の速度も未測定です。ローカルでの比較結果を、どの社内環境でも使用可能という根拠にはしません。

次の1手

行順・英字の大小・追加のどれを見たいかを分けると、出力0件や件数の意味が読みやすくなります。文章比較の作例は、元と変更後の対応を目で確かめるための材料です。

文章比較出力件数をそのまま編集行数と読み替えない登録なしで使えます開く