[awk] 列の順番を入れ替えて出力する

作成日: 2026年09月15日

awk では、print に指定するフィールドの順番を変えることで、入力データの列を任意の順番に入れ替えて出力できます。

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

Alice 30 Tokyo
Bob 28 Osaka

3列目、1列目、2列目の順番で出力するには、下記のように実行します。

awk '{print $3, $1, $2}' users.txt

$1$2$3 はそれぞれ1列目、2列目、3列目を表します。print$3, $1, $2 の順で指定することで、元の列を並べ替えて出力しています。

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

Tokyo Alice 30
Osaka Bob 28
awk Shell command