我想快速比较两个不同目录中的文件,看看文件是否相同(内容相同)。我想在 Kompare 中查看结果(我使用的是 KDE - Kubuntu 12.04)。
这是我的 diff 命令:
diff -EwbBsy /directory/one /directory/two
(如果该命令忽略 /directory/one 中尚未存在于 /directory/two 中的任何文件,那么它会更适合我,但我不知道如何实现这一点。)
要使用 Kompare,我这样做:
diff -EwbBsy /directory/one /directory/two | kompare -o -
但是,这会产生以下错误:
错误:无法解析 diff 输出。
我也尝试过:
diff -Ewbus /directory/one /directory/two | kompare -o -
并且只是
diff /directory/one /directory/two | kompare -o -
以及其他一些没有成功的变体。我究竟做错了什么?谢谢。
答案1
它似乎无法处理执行-y
并排样式 diff 的开关,但您可以使用统一 diff ( -u
)。您不能混合这两种样式,因此它是-y
或 - u
。所以这样做对我有用:
$ diff -EwbBsu /directory/one /directory/two | kompare -o -
默认情况下,这不会显示包含匹配项的整个文件,而只会显示不同的行,其中包含 3 行上下文。如果您想要更多上下文,您可以提供-u
一个数字参数(u 10
例如)。
$ diff -EwbBsU 10 /directory/one /directory/two | kompare -o -