正则表达式:忽略“!”差异/合并两个文件,注释以“!”开头

时间:2013-03-07 02:21:39

标签: regex merge fortran diff

我想合并 - 或者至少差异 - 两个Fortran名单文件,同时忽略空格。和以!开头的行。

我试过了

diff -w -u -I '!.*' FILE1 FILE2 
diff -w -u -I '\!.*' FILE1 FILE2
meld FILE1 FILE2

但是没有正则表达式似乎无法忽视!

1 个答案:

答案 0 :(得分:3)

当您使用-I时,diff只会跳过每个更改的行与正则表达式匹配的情况。因此,您需要先过滤掉这些行。

假设您使用的是bash之类的shell,则可以使用进程替换

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

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