2017-07-12 7 views
-1

私は私の問題についてより多くのトピックを読んだが、何も解決していない!AWKマルチラインマッチ

私はmy_textファイルでこれらのテキストがあります。

住所電話

dlkjfhadvkahvealkjvhfelkafverを4752935729527297

Discriptionのfkdshkhglkhrtlghltkg

その他5897696h8ghgvjhgh578hg

アドレスklsfghtrgjgjktsrljgsjgm

電話5789058309809583

Discriptionのdskjfvhfhgjvnwmrew

その他は

.....

.....

.....

をh09v3n3vt7957jt795783hjそして私はしたいですこのファイルデータを3つ(またはそれ以上)の行の値(Address、Phone、Miscなど)でフィルタリングします。

私はawk '/Address/,/Phone/,/Misc/' my_textをテストしますが、エラー!

+1

「awk」を試す/住所|電話|その他/ ' –

+0

ありがとうございました... 私の問題は解決しました! – mbzadegan

+0

'grep -E"住所|電話|その他 "my_text'も機能します。 –

答えて

0

あなたはまたはを使用する必要がありますオペレーター。

一致した行:

awk '/Address|Phone|Misc/{ print $0 }' your_text

結果:

Address dlkjfhadvkahvealkjvhfelkafver 
Address dlkjfhadvkahvealkjvhfelkafver 
Phone 4752935729527297 
Misc 5897696h8ghgvjhgh578hg 
Address klsfghtrgjgjktsrljgsjgm 
Phone 5789058309809583 
Misc h09v3n3vt7957jt795783hj 

あなたは$ 1を印刷する場合は、住所、電話または何がマッチを取得します。そして$ 2はあなたの値だけを表示します。