Bash脚本将JSON变量输出到文件

时间:2014-11-13 14:08:17

标签: json linux bash

我在Ubuntu的命令行中使用twurl连接到Twitter Streaming API,并使用this processor解析生成的JSON。我有以下命令,它返回从伦敦发送的推文文本:

twurl -t -d locations=-5.67,50.06,1.76,58.62 language=en -H stream.twitter.com /1.1/statuses/filter.json | jq '.text'

这很好用,但我很难将结果输出到名为london.txt的文件中。我试过以下,但仍然没有运气:

twurl -t -d locations=-5.67,50.06,1.76,58.62 language=en -H stream.twitter.com /1.1/statuses/filter.json | jq '.text' > london.txt

由于我对Bash脚本很新,我敢肯定我误解了'>'的正确用法和'>>',所以如果有人能指出我正确的方向,那就太棒了!

1 个答案:

答案 0 :(得分:0)

twurl -t -d locations=-5.67,50.06,1.76,58.62 language=en -H stream.twitter.com /1.1/statuses/filter.json | jq '.text' > london.txt

它将取代粘贴在其上的每一条新线。但是如果使用>>,它会将下一个写操作附加到文件末尾。所以尝试下面的例子,我确定它会起作用。

twurl -t -d locations=-5.67,50.06,1.76,58.62 language=en -H stream.twitter.com /1.1/statuses/filter.json | jq '.text' >> london.txt

此外,您可以使用tee命令检查重定向旁边的打印内容

twurl -t -d locations=-5.67,50.06,1.76,58.62 language=en -H stream.twitter.com /1.1/statuses/filter.json | jq '.text'| tee london.txt