Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxについて >> Linuxはdiffコマンドを使ってファイルを比較しています

Linuxはdiffコマンドを使ってファイルを比較しています

  

システムファイルの内容を比較する必要がある場合は、diffコマンドを使ってファイル間の同じ部分を見つけます。 Linuxのdiffコマンドの使用方法Linux上

diffコマンドは、場所の変更を見つけるために、ファイルの2つの異なるバージョンを比較するために、具体的には、ファイルの内容を比較するための非常に重要なツールです。差分は、コマンドラインの各行に変更を印刷します。最新バージョンのdiffはバイナリファイルもサポートしています。 Linuxシステムには、diffの出力に従ってa.cファイルの内容をb.cに更新できるパッチプログラムがあるため、diffプログラムの出力はパッチと呼ばれます。 diffは、svn、cvs、gitなどのバージョン管理ツールに欠かせません。

1。コマンドフォーマット:

diff [パラメータ] [ファイル1またはディレクトリ1] [ファイル2またはディレクトリ2]

コマンド機能:

diffコマンドは、単一のファイルまたはディレクトリの内容を比較できます。比較ファイルを指定した場合は、入力がテキストファイルの場合にのみ有効です。テキストファイルの類似点と相違点を1行ずつ比較します。ディレクトリとの比較を指定した場合、diffコマンドは両方のディレクトリで同じ名前のテキストファイルを比較します。さまざまなバイナリ、共通のサブディレクトリ、および1つのディレクトリにのみ現れるファイルを一覧表示します。

3。コマンドパラメータ:

- 表示するテキストの行数を指定します。このパラメーターは、-cまたは-uパラメーターと一緒に使用する必要があります。

-aまたは--text diffプリセットは、テキストファイルを1行ずつ比較するだけです。

-bまたは--ignore-space-changeは、スペース文字の違いをチェックしません。

-Bまたは--ignore-blank-lines空白行をチェックしません。

-cすべてのテキストを表示して違いをマークします。

-Cまたは--contextは、 " - c - '"コマンドを実行するのと同じです。

-dまたは--minimal小さい単位で比較するには、異なるアルゴリズムを使用してください。

-Dまたはifdefこのパラメータの出力形式は、プリプロセッサマクロに使用できます。

-eまたは--edこのパラメータの出力形式は、edスクリプトファイルに使用できます。

-fまたは-forward-ed出力形式はedスクリプトファイルと似ていますが、相違点は元のファイルの順序で表示されます。

-Hまたは--speed-large-files大きなファイルを比較するときの速度を上げます。

-lまたは--ignore-matching-lines 2つのファイルの数行が異なり、これらの行にオプションで指定された文字または文字列が含まれている場合、それらは表示されません。ファイル間の違い

-iまたは--ignore-caseは大文字の使用をチェックしません。

-lまたは--paginate結果はページングのためにprプログラムに渡されます。

-nまたは--rcs比較結果はRCS形式で表示されます。

-Nまたは--new-fileディレクトリを比較するときに、ファイルAがディレクトリ内にのみ存在する場合、デフォルトが表示されます。ディレクトリ内のみ:ファイルAが-Nパラメータを使用する場合、diffはファイルAを空のファイルと比較します。

-p比較対象のファイルがCコードファイルの場合は、相違点の関数名が表示されます。

-Pまたは--unidirectional-new-fileは-Nと似ていますが、2番目のディレクトリに最初のディレクトリにないファイルが含まれている場合にのみ、このファイルは空白になります。比較してください。

-qまたは--briefは相違点のみを表示し、詳細情報は表示されません。

-rまたは--recursiveサブディレクトリ内のファイルを比較します。

-sまたは--report-same-files違いが見つからない場合でも、メッセージは表示されます。

-Sまたは--starting-fileディレクトリを比較するときは、指定したファイルから比較を開始します。

-tまたは--expand-tabs出力時にタブ文字を展開します。

-Tまたは--initial-tab整列のために各行の前にタブ文字を追加します。

-u、-U、または--unified =ファイルの内容の違いをマージして表示します。

-vまたは--versionはバージョン情報を表示します。

-wまたは--ignore-all-spaceは、空白文字をすべて無視します。

-Wまたは--width -yパラメータを使用するときの列幅を指定します。

-xまたは--excludeは、オプションで指定されたファイルまたはディレクトリを比較しません。

-Xまたは--exclude-fromファイルまたはディレクトリの種類をテキストファイルとして保存してから、このテキストファイルを=で指定できます。

-yまたは--side-by-sideは、ファイルの類似点と相違点を並べて表示します。

--helpヘルプを表示します。

--left-column -yパラメーターを使用した場合、2つのファイルの1行の内容が同じ場合、その行の内容は左側のフィールドにのみ表示されます。

--suppress-common-lines -yパラメータを使用すると、相違点のみが表示されます。

4。例:

例1:2つのファイルを比較する

コードは次のとおりです。

[root @ localhost test3]#diff log2014.log log2013.log

3c3

2014-03

---

》 2013-03

8c8

2013-07

---

》 2013-08

11,12d10

2013-11

2013-12

説明:上記の "3c3"と "8c8"は、3行目と8行目でlog2014.logファイルとlog20143logファイルが異なることを示し、 "11、12d10"は最初のファイルが2番目のファイルであることを示します。 11行目と12行目

diffの通常の表示形式には3つのヒントがあります。

コードは次のとおりです。

a - 追加

c - 変更

d - 削除

インスタンス2:並列形式の出力

コマンド:diff log2013.log log2014.log -y -W 50

出力:

コードは次のとおりです。

[root @ localhost test3]#diff log2014.log log2013.log -y -W 50

2013-01 2013-01

2013-02 2013-02 < Br>

2014-03 |  2013-03

2013-04 2013-04

2013-05 2013-05

2013-06 2013-06

2013-07 2013- 07

2013-07 |  2013-08

2013-09 2013-09

2013-10 2013-10

2013-11 <<

2013-12 <<
前のページ1234次のページ合計4ページ

Copyright © Windowsの知識 All Rights Reserved