在awk输出中使用变量

时间:2012-03-15 14:28:23

标签: awk

以下按预期工作。

awk -F'^' '{printf "set %s:%s %s\n",$1,$2, $7}' todel.txt | sed 's/$/\\r\\n/' >> tofile.txt

但是当我尝试将输出添加到输出中时,如下所示,我收到错误:

awk -F'^' '{printf "set %s:%s:%s %s\n",$1,$2,$myvar $7}' todel.txt | sed 's/$/\\r\\n/' >> tofile.txt

1 个答案:

答案 0 :(得分:5)

$myvar不会以单引号扩展 您可以使用-v选项将shell变量传递给awk

awk -F'^' -v myvar=$myvar '{printf "set %s:%s:%s %s\n",$1,$2,myvar,$7}' todel.txt