[awk] 出力時の区切り文字を指定する

作成日: 2026年09月15日

awk では、組み込み変数 OFS を使用すると、print で複数のフィールドを出力するときの区切り文字を指定できます。

例えば、下記の内容の users.txt ファイルを用意します。

Alice 30 Tokyo
Bob 28 Osaka

各列をカンマ区切りで出力するには、下記のように実行します。

awk 'BEGIN{OFS=","}{print $1,$2,$3}' users.txt

BEGIN{OFS=","} で出力時の区切り文字をカンマに設定しています。print $1,$2,$3 のように、print の引数をカンマで区切って指定すると、各値の間に OFS の値が挿入されます。

実行結果は下記のとおりです。

Alice,30,Tokyo
Bob,28,Osaka
awk Shell command