このエントリーをはてなブックマークに追加


ファイルの比較を行う・fcコマンド

fcコマンドにより指定したファイル内容の比較を行うことができます。
以下にいくつかの使用例を記します。


fcコマンドのヘルプ

fcコマンドのヘルプを確認すると以下の出力がされます。
本記事では、バイナリモード(/B), テキストモード(/L), テキストモード比較時に行番号を表示する(/N)の使用例を記します。

  • fcのヘルプ出力
C:\work>fc /?
2 つのファイルまたはファイル セットを比較し、相違点を表示します。


FC [/A] [/C] [/L] [/LBn] [/N] [/OFF[LINE]] [/T] [/U] [/W] [/nnnn]
   [ドライブ1:][パス1]ファイル名1 [ドライブ2:][パス2]ファイル名2
FC /B [ドライブ1:][パス1]ファイル名1 [ドライブ2:][パス2]ファイル名2

  /A         相違する各部分の 1 行目と最後の行だけを表示します。
  /B         バイナリの比較を実行します。
  /C         英字の大文字と小文字を区別しません。
  /L         ファイルを ASCII テキストとして比較します。
  /LBn       連続する最大不一致行を指定行数に設定します。
  /N         ASCII の比較で行番号を表示します。
  /OFF[LINE] オフライン属性が設定されたファイルをスキップしません。
  /T         タブをスペースに変換しません。
  /U         Unicode テキスト ファイルとしてファイルを比較します。
  /W         連続した空白 (タブとスペース) を 1 つのスペースに圧縮して比較
             します。
  /nnnn      不一致発見後に確認する、一致すべき連続行数を指定します。

  [ドライブ1:][パス1]ファイル名1
             比較する最初のファイルまたはファイル セットを指定します。
  [ドライブ2:][パス2]ファイル名2
             比較する 2 番目のファイルまたはファイル セットを指定します。

テキストファイル同士の比較

fcコマンドでは、拡張子からテキストモードがバイナリモードかの判別を自動的に行います。
したがって、ほとんどの場合、テキストモード、バイナリモードを意識せずに比較できますが、
拡張子が無いファイルや拡張子からテキストなのかバイナリなのかを確認できない場合などは、
/Lオプションを使用し比較モードを指定することができます。

以下の2つのファイルを比較しています。

  • pref1.txt
    hokkaido
    aomori
    akita
    iwate
    yamagata
  • pref2.txt
    hokkaido
    aomori
    akita
    iwate
    miyagi
    yamagata

fc /L 比較結果

fc /L pref1.txt pref2.txt

pref2.txtにはmiyagiが対kあされています。
前後が表示され、間にmiyagiが表示されているのが確認できます。

C:\work>fc /L pref1.txt pref2.txt
ファイル pref1.txt と PREF2.TXT を比較しています
***** pref1.txt
iwate
yamagata
***** PREF2.TXT
iwate
miyagi
yamagata
*****

fc /L /N 比較結果

行番号を表示する/Nオプションを追加し実行した結果です。

C:\work>fc /N /L pref1.txt pref2.txt
ファイル pref1.txt と PREF2.TXT を比較しています
***** pref1.txt
    4:  iwate
    5:  yamagata
***** PREF2.TXT
    4:  iwate
    5:  miyagi
    6:  yamagata
*****

バイナリファイルの比較

バイナリファイルの比較を行った出力は以下の通りです。

C:\work>fc /b bin1.bin bin2.bin
ファイル bin1.bin と BIN2.BIN を比較しています
00000020: 79 6D
00000021: 61 69
00000022: 6D 79
00000025: 61 69
00000026: 74 0D
00000027: 61 0A
00000028: 0D 79
00000029: 0A 61
FC: BIN2.BIN は bin1.bin より長いファイルです

以上、fcコマンドによる、テキストファイルおよびバイナリファイルの比較方法です。

関連資料


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:49:28