文字列区切り文字を使用してファイルから特定の列を選択する方法

文字列区切り文字を使用してファイルから特定の列を選択する方法

文字列で区切られた列を持つファイルがあります。たとえば、

one<xx>two<xx>three<xx>four<xx>five<xx>six
one11<xx>two11<xx>three11<xx>four11<xx>five11<xx>six11

特定の列(たとえば、列1、3、5)のテキストを抽出したいと思います。したがって、出力は次のようになります。

one<xx>three<xx>five
one11<xx>three11<xx>five11

どうすればいいですか?次のコマンドを使用してくださいawk

ベストアンサー1

入力フィールド区切り記号(FS)と出力フィールド区切り記号(OFS)を次に設定します<xx>

awk 'BEGIN{FS=OFS="<xx>"} {print $1,$2,$5}' file

出力:

one<xx>two<xx>five
one11<xx>two11<xx>five11

望むより:8つの強力なawk組み込み変数 – FS、OFS、RS、ORS、NR、NF、FILENAME、FNR

おすすめ記事