将 jq 输出重定向

3

在终端中,这个命令可以正常工作:

mosquitto_sub -h 192.168.178.20 -t tele/POW/SENSOR/# | jq '.ENERGY|.Power'

每10秒钟屏幕上会有一个输出,因为设备 POW 每10秒钟发布一次它的传感器数据。 mosquitto_sub 的输出(它是一个 JSON 字符串)被管道传送到 jq,jq 只显示键“Power”的值数字。现在我尝试将 jq 输出(只有值)存储到文件“output.log”中。

mosquitto_sub -h 192.168.178.20 -t tele/POW/SENSOR/# | jq '.ENERGY|.Power' > output.log

无法工作。出了什么问题?

1个回答

2

从jq手册中:

--unbuffered

Flush the output after each JSON object is printed 
(useful if you’re piping a slow data source into
jq and piping jq’s output elsewhere).

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接