テキストファイルから特定のフィールドを切り取る

テキストファイルから特定のフィールドを切り取る

次のように区切られた9つのフィールドを持つテキストファイルがあります。

survey:m1111771::rent:travel:::Morning:

フィールド1と8のみを別々のファイルに抽出する方法

たとえば、次のようになります。

survey:Morning

答え1

いくつかの方法の1つ:

$ awk -F: '{print $1":"$8}' <file>
survey:Morning

@casが指摘したように、OFS「出力フィールドの区切り記号」はどこにありますか?

$ awk -F: -v OFS=: '{print $1,$8}'
survey:Morning

答え2

他のバージョンでは、以下を使用しますcut

cut -d: -f1,8 file > newfile

関連情報