Unix 差异与上下文并排
Unix diff side-by-side with context
在 Unix 中,执行
diff -y file1 file2
可以并排查看两个文件。并执行
diff -c file1 file2
3行上下文可以看出两个文件的区别。
执行
diff -y --supress-common-lines
可以抑制所有公共线。但是如果我想并排显示但有 3 行上下文怎么办? --supress-common-lines
将完全不提供上下文
diff -y -c file1 file2
会给我conflicting output style options
。有办法实现吗?
似乎diff(1)
不允许,但vimdiff似乎可行:
vimdiff -c 'set diffopt=context:3' file1 file2
缺点是它是纯交互的,您不能将差异转储到文件中,但话又说回来,并排差异在文件中不是很有用。但是,如果您确实想将其保存到文件中,this 很棒的答案会让您这样做:
vimdiff -c 'set diffopt=context:3' -c TOhtml -c 'w! output.html' -c 'qa!' file1 file2
不理想,但也不错。
在 Unix 中,执行
diff -y file1 file2
可以并排查看两个文件。并执行
diff -c file1 file2
3行上下文可以看出两个文件的区别。 执行
diff -y --supress-common-lines
可以抑制所有公共线。但是如果我想并排显示但有 3 行上下文怎么办? --supress-common-lines
将完全不提供上下文
diff -y -c file1 file2
会给我conflicting output style options
。有办法实现吗?
似乎diff(1)
不允许,但vimdiff似乎可行:
vimdiff -c 'set diffopt=context:3' file1 file2
缺点是它是纯交互的,您不能将差异转储到文件中,但话又说回来,并排差异在文件中不是很有用。但是,如果您确实想将其保存到文件中,this 很棒的答案会让您这样做:
vimdiff -c 'set diffopt=context:3' -c TOhtml -c 'w! output.html' -c 'qa!' file1 file2
不理想,但也不错。