我有大型文件,我想要做一些選擇打印。我想根據模式匹配找到一行,並打印此行,以及所有後續行直到文件末尾。我會使用sed,但是,匹配僅基於第一列和第二列。選擇性打印
awk '{if($1=="XYZ" && $2=="GT") print $0}' in.file > out.file
如何更改上面的內容以打印匹配後的所有行。
我有大型文件,我想要做一些選擇打印。我想根據模式匹配找到一行,並打印此行,以及所有後續行直到文件末尾。我會使用sed,但是,匹配僅基於第一列和第二列。選擇性打印
awk '{if($1=="XYZ" && $2=="GT") print $0}' in.file > out.file
如何更改上面的內容以打印匹配後的所有行。
使用印刷標誌:
awk '$1=="XYZ" && $2=="GT" { f = 1 } f' in.file > out.file
的f
設置爲1時,在滿足兩個條件。在腳本結束時的孤獨f
調用默認塊{ print $0 }
時1
,或者嘗試使用範圍模式:
awk '$1=="XYZ" && $2=="GT",end' file
對於我來說,你的sed
辦法是罰款。如果分隔符是;
:
sed -n -e '/^XYZ;GT;/,$p' your_file
優秀,一個有用的工具知道! – user1308144 2013-03-12 08:47:04