web-dev-qa-db-ja.com

差分をKompareにパイプする方法は?

2つの異なるディレクトリにあるファイルをすばやく比較して、ファイルが同じ(同じコンテンツ)であるかどうかを確認したいと思います。 Kompareで結果を確認したい(KDE-Kubuntu 12.04を使用しています)。

これが私のdiffコマンドです:

diff -EwbBsy /directory/one /directory/two

(このコマンドは、/ directory/twoにまだ存在していない/ directory/one内のファイルを無視すると、さらに適していますが、それを実現する方法がわかりませんでした。)

Kompareを使用するには、次のようにします。

diff -EwbBsy /directory/one /directory/two | kompare -o -

ただし、次のエラーが発生します。

エラー:差分出力を解析できませんでした。

私も試しました:

diff -Ewbus /directory/one /directory/two | kompare -o -

そしてただ

diff /directory/one /directory/two | kompare -o -

そして成功しなかった他のいくつかのバリエーション。私は何が間違っているのですか?ありがとう。

3
MountainX

サイドバイサイドスタイルのdiffを実行する-yスイッチを処理できないようですが、統合diff(-u)を使用できます。これらの2つのスタイルを混在させることはできないため、-yまたは-uのいずれかになります。だからこれをすることは私のために働いた:

$ diff -EwbBsu /directory/one /directory/two | kompare -o -

これにより、一致するファイル全体が表示されるのではなく、デフォルトで3行のコンテキストを持つ異なる行のみが表示されます。より多くのコンテキストが必要な場合は、たとえば-uに数値の引数(u 10)を指定できます。

$ diff -EwbBsU 10 /directory/one /directory/two | kompare -o -
2
slm