可能なすべての値を見つけるためにgrepを指定する方法
つまり、次のファイルを使用してください(9701
どんな値でも可能です)。
9701=1??
9701=10.Pp
9701=1a 8a
9701=3.a_tt
9701=1/a -00
9701=Bg1998pps
私が試すことができます
egrep -Eo '9701=[A-Z]+[a-z]+[0-9]{1,50}' test.log
これは大文字/小文字と数値のみを提供します。 grepリクエストに特殊文字を含む値を含める方法は?つまり、スペース、ドット、ハイフン、アンダースコアなどを使用します。
ベストアンサー1
cut -d '=' -f 2- data.in
これにより、各行が複数の別々のフィールドとして処理され、=
最初のフィールド以降のすべての項目が返されます。
出力:
1??
10.Pp
1a 8a
3.a_tt
1/a -00
Bg1998pps
行の最初の部分に関連するコンテンツのみを返す必要がある場合(9701
あなたの場合):
grep '^9701=' data.in | cut -d '=' -f 2-
または全体の内容は次のとおりですawk
。
awk -F '=' '$1 == "9701" { sub(/^[^=]+=/,""); print }' data.in
これは、最初の区切り文字フィールドの文字列比較を実行し=
て関心のあるレコードを見つけ、最初のフィールドと=
区切り文字を削除して残りの内容を出力します。