Bash 如何在awk中使用变量

Bash 如何在awk中使用变量,bash,Bash,我正在尝试用HTML打印服务器名称 我使用awk-v编写了下面的代码,但是服务器名称没有打印出来 awk -v server="${svr}" 'BEGIN{ FS="," print "==============================\n" printf "<h2>ServerName : ${server}</h2>" print "==============================" print "<HTML>""<TAB

我正在尝试用HTML打印服务器名称 我使用awk-v编写了下面的代码,但是服务器名称没有打印出来

awk -v server="${svr}" 'BEGIN{
FS=","
print "==============================\n"
printf "<h2>ServerName :  ${server}</h2>"
print "=============================="
print  "<HTML>""<TABLE border="1">"
}
 {
printf "<TR>"
for(i=1;i<=NF;i++)
{
printf "%s", "<td"
if ($i+0==2) printf " bgcolor=#FF3333"
    else if ($i+0==1) printf " bgcolor=#FFCC33"
    else if ($i+0==4) printf " bgcolor=#99FF33"
print ">" $i "</td>"
}
print "</TR>"
 }
END{
print "</TABLE></BODY></HTML>"
 }
awk-v server=“${svr}”开始{
FS=“,”
打印“=================================================\n”
printf“服务器名:${server}”
打印“=================================================”
打印“”“”
}
{
printf“”
对于(i=1;i以这种方式使用:

print "servername:" server
或:


可能重复我检查了链接中给出的答案,方法与我相同,但面临问题我需要在@Sandy well内部使用只需添加
,然后…
printf“foo bar%s任何你想添加到字符串中的内容”,服务器
btw,
printf“fixstring”
不填充参数被认为是不好的做法。尝试
printf“服务器名:%s,“服务器”
错误:
awk:cmd.line:4:printf“服务器名:%s”,服务器“awk:cmd.line:4:^语法错误
@Sandy好的,就拿这个:
printf“服务器名:%s”,服务器
当我看到
语法错误
时,我会大吃一惊,检查
printf
的正确语法
printf "foo: %s bar", server