我想尝试从XML流设置变量,我可以使用此命令从XML流输出事件
curl -s http://admin:12345@10.1.1.51/Event/notification/alertStream |
awk -F"[<>]" '/eventDescription/{print $3}'
Xml流每秒不断输出eventDescription。我的问题是如何将它输出到BASH脚本中的变量。
这样做不起作用,我认为是因为Xml流永远不会停止输出。
MY_EVENT=$(curl -s http://admin:12345@10.1.1.51/Event/notification/alertStream |
awk -F"[<>]" '/eventDescription/{print $3}')
答案 0 :(得分:0)
假设问题是curl命令继续永远提供输出,您需要一些能够定期将缓冲区刷新到管道另一端的命令。 POSIX awk本身没有这样的命令,但是BSD awk确实有fflush
函数(我在OS X上运行)。