▼すべてを開く。
▲すべてを閉じる。
$ diff -c original.txt modified.txt *** original.txt 2005-07-20 16:43:24.000000000 +0900 --- modified.txt 2005-07-20 16:43:30.000000000 +0900 *************** *** 3,9 **** 2つのファイルを比較してその違いを出力する。 両方のファイルに存在する行 - originalファイルにだけ存在する行 ! 何らかの変更があった行 --- 3,9 ---- 2つのファイルを比較してその違いを出力する。 両方のファイルに存在する行 + modifiedファイルにだけ存在する行 ! なにか変更があった行
diffコマンドで-cオプション、元ファイル「original.txt」と変更後のファイル「modified.txt」を指定すると、2つのファイルの差分をcontext形式で出力する。
context形式では、元ファイルと変更後のファイルの該当部分の双方を別々に表示する。比較する2つのファイルの内容
元ファイル「original.txt」の内容 | 更新ファイル「modified.txt」の内容 |
diff | diff |
2つのファイルを比較してその違いを出力する。 | 2つのファイルを比較してその違いを出力する。 |
両方のファイルに存在する行 | 両方のファイルに存在する行 |
originalファイルにだけ存在する行 | |
modifiedファイルにだけ存在する行 | |
何らかの変更があった行 | なにか変更があった行 |
diffコマンドの出力
*** original.txt 2005-07-20 16:43:24.000000000 +0900 --- modified.txt 2005-07-20 16:43:30.000000000 +0900
1行目と2行目は、比較するファイルの情報である。
*** | 元ファイル |
--- | 更新ファイル |
*** 3,9 **** <- 元ファイルの3行目から9行目を表す 2つのファイルを比較してその違いを出力する。 両方のファイルに存在する行 - originalファイルにだけ存在する行 <- 元ファイルから削除された行 ! 何らかの変更があった行 <- 更新された行 --- 3,9 ---- <- 更新ファイルの3行目から9行目を表す 2つのファイルを比較してその違いを出力する。 両方のファイルに存在する行 + modifiedファイルにだけ存在する行 <- 更新ファイルに追加された行 ! なにか変更があった行 <- 更新された行
「*** 行,行 ***」は元ファイルの行の範囲を表す。
行頭に何も記号がない行は、双方のファイルで変更のない部分である。
context形式の差分情報は、元ファイルから削除された行、追加された行、変更された行を表す。
+ | 更新ファイルに追加された行 (元ファイルに存在しない) |
- | 元ファイルから削除された行 (更新ファイルに存在しない) |
! | 更新された行 |