次のデータがあります。
p_id^|^data1^|^data2^|^data3
2番目のフィールドだけを求めるだけです。
data1
コマンドでいくつかのトリックを試しましたが、awk
見つかりませんでした。誰でも助けることができますか?
答え1
区切り文字に複数の文字が含まれており、すべての文字が特殊文字(両方とも^
正規|
表現演算子)であるため、エスケープする必要があります。コマンドラインから次のコマンドを使用してこれを実行できます。
awk -F '\\^\\|\\^' '{ print $2 }' file
また、バックスラッシュ自体をエスケープするには、デュアルバックスラッシュが必要です(他の理由で)。