私は gawk(4.1.3) を使っていますが、小さな問題に封着したようです。バックスペース文字の後に改行文字が続くと機能しないようです。
awk 'BEGIN{for(i=1;i<=3;i++) printf("%d,",i); printf("\b\n")}'
ください1,2,3,
(最後のカンマは抜けません)
\n
新しい関数に入れてもこの問題は解決しませんprintf
。
しかし、間にスペースなどの\b
文字を挿入すると\n
機能します。
もう一度削除すると\n
機能します。
問題は何ですか?
答え1
\b
カーソルだけが移動され、テキストは上書きされません。
でカンマ区切りリストを作成するには、awk
正しいレコードを作成して印刷することが1つのオプションです。
BEGIN {
OFS = ","
$0 = ""
for (i = 1; i <= 3; ++i)
$i = i
print
}
出力は次のとおりです1,2,3
。
ソロ群衆の場合:
awk -vOFS=',' 'BEGIN { for (i = 1; i <= 3; ++i) $i = i; print }'
$0
空の文字列に設定すると、そうではありません。本物ここでは、ブロックが1つだけでBEGIN
入力データがないため必要なので、単一行の変形では省略しました。