2013-03-07 59 views

回答

3

当你使用-I,diff只跳过hunks,其中改变线匹配的正则表达式。所以,你需要先过滤掉那些行。

假设你正在使用的shell,比如bash,你可以使用进程替换

diff -w -u <(grep -v '^!' FILE1) <(grep -v '^!' FILE2) 

注意,这可能会改变报告的行号和统一的输出。

+0

这是行不通的...甚至'grep -v'^!' FILE1'返回很多行(注释或不行),也许是因为“!”并不总是在行的开始?但'*!*'也不起作用。这里是[FILE1]的链接(https://gist.github.com/geophtwombly/5105124/raw/3c579b48ee65afa08c213c609ddb82cda6eeb9bf/FILE1.f90) – Abe 2013-03-07 02:30:05

+0

如果'!'不完全在行的开头,请尝试'[ [:空间:]] *'!这将消除在最初的'!'之前有空格(或制表符)的行。 – nneonneo 2013-03-07 02:31:59

+0

明白了。感谢您的教程。 – Abe 2013-03-07 02:36:49