在awk脚本中管道无法正常工作

时间:2013-12-02 11:17:24

标签: json awk

我有一个新行分开,json'd输出一个在cron中运行的观察程序。 每5分钟,它会在文件中添加一个新的观察结果。

为了查找某些东西(任何东西),然后在线上获取json对象的日期,我正在运行:

 awk '/down/ {print $0 | json date }' observations

这里,json是我在某处找到的脚本 - json K输出与json对象I中的键K对应的值。

无论如何,运行上面的单行会导致awk无法打印任何内容,退出代码为141.

这是mawk 1.2,在ubuntu上。

2 个答案:

答案 0 :(得分:1)

awk不是shell。您不能直接从awk调用外部命令,而不能从C程序中调用。 man awk如何调用外部命令。

答案 1 :(得分:0)

不确定你的观察文件看起来如何(也许发布它?),但是你不想要这样的东西:

grep down observations | json date

好的,你也可以试试:

awk '/down/{c="echo " $1 "| json date";system(c)}' observations