[awk] 改行せずに文字列を出力する

作成日: 2026年09月26日

awk で改行せずに文字列を出力するには、print ではなく printf を使用します。

下記の例では、2行の入力を改行せずに連結して出力しています。

printf 'apple\nbanana\n' | awk '{printf "%s", $0} END {printf "\n"}'

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

applebanana

print は出力の末尾に改行を付加しますが、printf は書式文字列で指定しない限り改行しません。

この例では各行を printf "%s", $0 で改行なしに出力し、最後に END {printf "\n"} で1回だけ改行しています。

参考

awk Shell command