diffでよく使うオプション

サラトガIT日記 > Linux(UNIX) > diffでよく使うオプション diffでよく使うオプション

※実経験の記憶を頼りに自宅の PC 環境(VMWareなど)で再現している内容もあるのでご注意下さい

2008-07-08

 

diff は別に Linux に特化した機能でもないですが、ここでは Linux や FreeBSD の diff コマンドについて紹介します。diff は 2 つのファイルの差分や、ディレクトリの差分をわかりやすく結果出力してくれるコマンドです。その中でも、下記の 2 つのオプションを私はよく使います。
(今回はファイルの差分に特化してみました)

[-c] 
context 出力形式を用いる

[-u]
unified 出力形式を用いる

私は -u オプションをよく使いますが、2 つの違いを見比べてみます。
(IBM AIX の diff には -u オプションがありませんでした)

まず、下記のテキストファイル A と B を用意します。

[テキストA(a.txt)]
AAAAA
BBBBB
CCCCC
DDDDD

[テキストB(b.txt)]
AAAAA
DDDDD
EEEEE
FFFFF

これらの差分を diff を使ってみてみます。最初は -c オプションで、次に -u オプションです。-u の方がイメージ付きやすいけど、みなさんはどうでしょうか。

$ diff -c a.txt b.txt

*** a.txt       Tue Jul  8 00:24:42 2008
--- b.txt       Tue Jul  8 00:24:53 2008
***************
*** 1,4 ****
  AAAAA
- BBBBB
- CCCCC
  DDDDD
--- 1,4 ----
  AAAAA
  DDDDD
+ EEEEE
+ FFFFF

$ diff -u a.txt b.txt
--- a.txt       Tue Jul  8 00:24:42 2008
+++ b.txt       Tue Jul  8 00:24:53 2008
@@ -1,4 +1,4 @@
 AAAAA
-BBBBB
-CCCCC
 DDDDD
+EEEEE
+FFFFF

関連記事

上記の記事に関連する記事(最新の10件)です。