grep正確なテキスト出力のみ可能ですか?

grep正確なテキスト出力のみ可能ですか?

次のテキスト行があるとしましょう。

#cat numbers.txt
Numbers!!!! John=55 May=43 RandomData Alex=72 Ben=90 End

しかし、私はジョンの電話番号だけに興味があります。他の不要なアイテムをすべて削除して出力を次のように置き換えるにはどうすればよいですか?

#cat numbers.txt | <some command line magic>
John=55

注:テキストファイル内の「John」がどこにあるのか、Johnにどの番号が割り当てられているのかわかりません。

ベストアンサー1

私はそれをします:

awk '{ print $2 }' numbers 
John=55

ただし、必要な情報は常に2番目のフィールドにあります。

編集する:~によるとあなたの編集してください。ファイル内のJohnがどこにあるのかわからないので、次のようにします。

egrep -o 'John=[0-9]{2}' numbers 
John=55

おすすめ記事