Questions tagged «diff»

diff-命令行工具,用于显示两个文件或两个目录中每个对应文件之间的差异。

1
使用vimdiff复制更改的推荐方法是什么?
比较文件和更新源代码存储库时,我喜欢使用vimdiff。要将更改从一个文件复制到另一个文件,我通常使用如下键序列: Shift + V (select line) k or j; { or }; Up or down arrow keys (select more lines) y (copy selected lines) Ctrl + w, left/right arrow (move to other pane) p (paste lines) Vim,作为键盘快捷键的掌握者,肯定应该有一种更简单的方式来执行相同的任务。有一个吗?您使用什么来手动更新源代码更改?
117 vim  diff 

12
一行内的差异
我有一些SQL转储,我正在看它们之间的差异。diff显然可以向我展示两行之间的区别,但是我很努力地试图找出长逗号分隔值列表中的哪些值实际上是导致行不同的值。 我可以使用什么工具指出某些文件中两行之间的确切字符差异?
113 command-line  diff 

5
了解差异输出
我有 file1.txt this is the original text line2 line3 line4 happy hacking ! 和 file2.txt this is the original text line2 line4 happy hacking ! GNU is not UNIX 如果我这样做:diff file1.txt file2.txt我得到: 3d2 < line3 5a5 > GNU is not UNIX 一般如何解释输出?我认为这<意味着删除,但什么3d2或者5a5是什么意思? 如果我做: $ diff -u file1.txt file2.txt --- file1.txt …
87 linux  files  diff 

4
无法通过管道传递到差异?
我想变得聪明一点,将远程文件与本地文件进行比较,而无需先手动下载它。我可以通过以下方式获取远程文件的内容 ssh user@remote-host "cat path/file.name" 但是,将其传递给 diff ssh user@remote-host "cat path/file.name" | diff path/file.name 给我这个: diff: missing operand after `path/file.nae' diff: Try `diff --help' for more information. 我已经设置了ssh密钥,因此它不会提示我输入密码。有什么解决方法?

3
比较Vim中的两个文件
在Vim中可以并排查看两个文件吗?如果是这样,我该如何设置我的编辑器来做到这一点,并且diff在Vim中的两个文件之间有办法吗? 我知道:nextand :prev命令,但这不是我要的。串联查看两个文件确实很棒。
63 vim  diff 

8
将彩色输出转换为html
有提供彩色输出的工具: dwdiff -c File1 File2 # word level diff grep --color=always # we all know this guy ... 问题是:如何将其任意程序的彩色输出转换为彩色html文件? 其他输出格式也可能适用(LaTeX会很棒)。我认为html是一个很好的起点,因为很容易将其转换为其他格式。 (出于好奇如何保留终端颜色代码,请遵循以下答案:https : //unix.stackexchange.com/a/10832/9689-... | unbuffer command_with_colours arg1 arg2 | ...工具unbuffer是期望的一部分)

5
如何区分忽略注释的文件(以#开头的行)?
我有两个配置文件,一个是来自软件包管理器的原始文件,另一个是我自己修改的自定义文件。我添加了一些注释来描述行为。 如何diff在配置文件上运行而跳过注释?带注释的行由以下方式定义: 可选的前导空格(制表符和空格) 井号(#) 其他任何字符 跳过第一个要求的(最简单)正则表达式将是#.*。我尝试了GNU diff 3.0 的--ignore-matching-lines=RE(-I RE)选项,但无法在RE中使用它。我也尝试过.*#.*,.*\#.*没有运气。从字面上看,将(Port 631)放在RE任何地方都不匹配,将RE放在斜线之间也无济于事。 如“ diff”工具中所建议的那样,似乎缺少正则表达式?,我尝试过grep -G: grep -G '#.*' file 这似乎与注释匹配,但不适用于diff -I '#.*' file1 file2。 那么,该选项应如何使用?如何diff跳过某些行(在我的情况下为评论)?请不要建议grep文件和比较临时文件。

1
使diff在并排模式下使用完整端子宽度
大多数应用程序都很聪明地使用了终端可用的全部宽度。我的外壳程序有屏幕,vim等。但是,diff在并排模式(-y)中则没有。这激怒了我。它使用126个字符的宽度,这甚至不是我的270块宽度终端的一半。 浏览手册页并没有发现有关自动调整宽度的任何细节,仅通过手动指定宽度-W。 是否可能有一项“隐藏功能” diff允许它自动扩展到终端的整个宽度?要么; -W <terminalsize>每当我运行diff命令时,最简单的方法是什么? 我假设自动将-W附加到所有内容不会有什么坏处,因为它只会意味着“使用$ x列”,这始终是我想要的,无论我处于并排模式,否则。
40 terminal  diff 

4
是否有精简的并排diff格式?
我有两个带有数千行的日志文件。预处理后,仅某些行不同。这些剩余的行要么是实际的差异,要么是混乱的行组。 统一的差异使我可以看到详细的差异,但是很难与眼球进行手动比较。并排差异对于比较似乎更有用,但它也增加了数千行未更改的行。有没有办法利用两个世界的优势? 注意,这些日志文件是通过xscope监视Xorg协议数据的程序生成的。我正在寻找可用于类似于上述情况的通用工具,而不是例如专用的Web服务器访问日志分析工具。 可从http://lekensteyn.nl/files/qemu-sdl-debug/(log13和log14)获得两个示例日志文件。可以在xscope-filter文件中找到预处理器命令,该命令会删除时间戳和其他次要细节。
40 diff 

4
在本地和远程文件之间运行差异
我通过连接在主机上ssh,我想将diff某个配置文件与另一台主机上的对应配置文件进行比较(也可以通过进行比较)ssh,而不必通过运行diff来手动下载远程文件。
39 bash  ssh  diff 

3
递归比较两个带有diff -r的目录,而不在断开的链接上输出
我diff -r a b用来递归比较目录a和b。尽管经常有一些断开的链接(a和b目录中相同的断开链接并指向相同的,不存在的目标),但这种情况经常发生。 diff然后针对这些情况输出错误消息,并以非零退出代码退出,但是我希望它保持沉默,并以0退出,因为目录与我的书相同。 我怎样才能做到这一点?
38 diff 

3
如何将有色差异输出减少?
我一直在使用git diff,它产生彩色输出。但是,我现在发现我需要对某些东西使用普通的diff,并且由于缺少颜色,它会产生很多难以阅读的输出。如何使diff产生可读的彩色输出?理想情况下,通过管道将其减少到更少,以便于查看大文件。
37 colors  diff  less 


4
diff报告两个文件不同,尽管它们相同!
我有两个看起来和我一样的文件(包括结尾的空格和换行符),但diff仍然说它们有所不同。即使我进行diff -y并排比较,线条看起来也完全一样。diff的输出是整个2个文件。 知道是什么原因造成的吗?
31 diff 

7
您将推荐哪种GUI差异查看器,并具有“左右复制”功能?
除了Meld以外,我几乎没有用过其他任何东西。你还能推荐其他东西吗? 如果您给出推荐的理由(作为评论),那将更好。 [ note ]我想要一个替代方法,因为Meld最近失去了将整个内容从一个文件复制到另一个文件的功能。我指的是通过Copy To Left/Right右键单击菜单项可用的功能。 [ 更新 ]我刚刚检查了一下,这个问题是由1.3.2引入的。1.3.1很好用,我检查的最新版本是1.4.0,它不起作用。
30 software-rec  gui  diff 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.