bash - 如何从一行中进行grep

标签 bash api grep

我正在使用一个天气 API,它在一行中输出所有数据。如何使用 grep 获取“summary”和“apparentTemperature”的值?我对正则表达式的掌握基本上不存在,但我准备学习。

{"latitude":59.433335,"longitude":24.750486,"timezone":"Europe/Tallinn","offset":2,"currently":{"time":1485880052,"summary":"Clear","icon":"clear-night","precipIntensity":0,"precipProbability":0,"temperature":0.76,"apparentTemperature":-3.34,"dewPoint":-0.13,"humidity":0.94,"windSpeed":3.99,"windBearing":262,"visibility":9.99,"cloudCover":0.11,"pressure":1017.72,"ozone":282.98}}

谢谢!

最佳答案

How do I use grep to get the values for "summary" and "apparentTemperature"?

您使用 grep-o 标志,这使得它只输出匹配的部分。

由于您对正则表达式知之甚少,我建议您改为学习使用 JSON 解析器,它更适合此任务。

例如 jq , 以下命令将提取当前摘要:

<whatever is your JSON source> | jq '.currently.summary'

关于bash - 如何从一行中进行grep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41962786/

相关文章:

api - 是否可以通过服务器端API将事件发布到Google Analytics(分析)?

java - 图片加载速度非常慢

grep 使用列表查找文件中的匹配项,并仅打印列表中每个字符串的第一次出现

macos - bash: make: 找不到命令

linux - 将txt行放入变量中,除以分隔符检查并重写txt发送命令

linux - Unix:遍历一个目录

bash - 如何使用 bash 冲洗管道

java - 如何在 Hadoop 1.0.4 中链接映射器/ reducer ?

linux - 如何使用 grep 过滤掉包含特定日期之前的日期的行

svn - Unix命令剥离一行的一部分