我需要在不使用'
角色的情况下做到这一点。
我可以这样做:
awk '{sum+=$5} END { print "Average = ",sum/NR}'
除了这包含一个 '
.
答案1
您不需要''
(强引号),您可以使用较弱的形式""
,除非您需要转义 s "
。
awk "{sum+=\$5} END { print \"Average = \",sum/NR}"
但为什么?
答案2
如果你的 shell 支持它,你可以使用这里的文档从标准输入读取命令,并使用带引号的分隔符来防止 shell 扩展 awk 变量$5
awk -f- somefile << "EOF"
{sum+=$5} END { print "Average = ",sum/NR}
EOF
或者只是将命令放入文件中并运行那和awk -f
。