2015-02-24 10 views
0

如何在unix diff中排除以下行?如何在unix diff中排除這一行?

<xs:element attribute1="0" attribute2="return" attribute3="true" type="ax277:ResponseDataBean"/> 

我需要排除'ax'之後的數字不同的所有情況。例如,下面的差異應該被排除:

文件1:

<xs:element attribute1="0" attribute2="return" attribute3="true" type="ax277:ResponseDataBean"/> 

文件2:

<xs:element attribute1="0" attribute2="return" attribute3="true" type="ax111:ResponseDataBean"/> 

我曾嘗試:

DIFF -I「類型=「斧頭^'file1 file2

但它仍在顯示那些行

回答

1

你應該真的使用XML工具來處理XML,因爲在你不需要的地方找到一個用換行符編寫的文件之前不會很長時間,因此在你想要的地方找到你想要的行排除不再匹配單行模式。

但是,你所要求做的一種方法是從diff認爲開始的輸入中排除那些行。沿着這些線路使用bash進程替換:

diff <(grep -v 'type="ax[0-9]+:' file1) <(grep -v 'type="ax[0-9]+:' file2)