awk,打印结果

Quo*_*ans 1 awk

为什么

awk '{print 3 + 3}'

不起作用,但是:

echo 3|awk '{print $1 + 3}'

做?

第一个语句不能只输出6吗?打印计算结果的最简单方法是什么?

ste*_*ver 6

AWK 语句由模式动作组成:引用GNU awk 手册

当规则模式与当前输入记录匹配时执行规则

在第一种情况下,您没有提供任何输入记录 - 因此您没有任何操作。在这种情况下,您可以使用特殊模式BEGIN

awk 'BEGIN {print 3 + 3}'
Run Code Online (Sandbox Code Playgroud)