• ベストアンサー

linuxコマンド・C言語での行抜き出し

2つのファイルを比較して一致しない行だけを 抜き出すという処理について教えてもらえますでしょうか? 例) 比較するファイルは以下のようなファイルとする。 ファイル1    ファイル2 A         A B         C C D 出力ファイル B D このような処理を行いたいのです。 方法としてはC言語かlinuxコマンドを用いたいのですが、 教えてもらえますでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ky072
  • ベストアンサー率60% (85/140)
回答No.3

diff のオプションをいじればできると思います。 % diff --old-line-format='%L' --new-line-format='%L' --unchanged-line-format='' ファイル1 ファイル2

すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.2

状況によってはcommコマンドが使えます。 (入力ファイルが辞書順にソートされた状態であることが(またはあらかじめソートしておくことが)必要です。) >cat 1 A B C D >cat 2 A C >comm -13 1 2 (ファイル2だけに出現する行→無い) >comm -23 1 2 (ファイル1だけに出現する行) B D >comm -12 1 2 (両方のファイルに出現する行) A C

すると、全ての回答が全文表示されます。
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

diff?

noman1777
質問者

補足

ちなみにAというデータは 日付と数字になります 例) 2000/01/01 2.5

すると、全ての回答が全文表示されます。

関連するQ&A