echo -n "##### STATIONS? #######"
read station
awk -v input="$station" '
BEGIN {
n = split(tolower(input), user)
fmt = "%-4s\n"
}
{print}
/stab_site clear/ {
for (i=1; i<=n; i++)
printf fmt, "stab_site" user[i]
exit
}
' ./data > data_2
ユーザー入力家庭:ankr ista
ラジオ局用。コードの実行後、データファイルの行の後にstab_site clear
ユーザー入力が次のように書き込まれます。
stab_siteankr
stab_siteista
コードでは、「stab_site」と「station_ids」の間にスペースが必要です。また、次のように、行の先頭から始まるスペースの後に各行を作成する必要があります。
stab_site ankr
stab_site ista
答え1
分裂させる
printf fmt, "stab_site" user[i]
"stab_site" user[i]
stab_sitenakr
サイトの後ろにスペースがないのでprintf fmt, "stab_site" user[i]
旋回print "%-4s\n" , stab_sitenakr
左揃えで印刷stab_sitenakr
たぶんあなたが探していると思います。
printf fmt, "stab_site " user[i]
または(OPの要請に応じて)
printf " %s %s\n", "stab_site", user[i]