如何在不使用 ' 字符的情况下对文本文件中的列进行平均?

如何在不使用 ' 字符的情况下对文本文件中的列进行平均?

我需要在不使用'角色的情况下做到这一点。

我可以这样做:

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

相关内容