以下のテキストがあります。ABC:CDA*
とを含むブロックを印刷しますfgh:qwe
。
Awkで試しましたが、すべてのデータが印刷されました。
awk -n -v RS='' -v ORS='\n\n' 'match($0,".*fgh:qwe[^\n]*") { print substr($0,1,RLENGTH) }'
入力する:
ABC:CDA_sd
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
axy:ABC_gf
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
ABC:CDA_ghg
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
ABC:CDA_jsagdh
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
出力:
ABC:CDA_sd
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
ABC:CDA_ghg
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
ABC:CDA_jsagdh
dfg:GFJ
dfg:jasdn
iop:yui
ghj:bhu
ghj:poi
fgh:qwe
ベストアンサー1
努力する:
awk -v RS= '/^ABC:CDA.*fgh:qwe$/{ print sep $0; sep=ORS }' infile