You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过curl调用wttr.in获取不含正负号与°F标识的纯数字当前温度?

提取wttr.in返回的纯数字温度值方案

方法1:使用sed过滤非数字字符

通过sed命令剔除温度字符串中的非数字(含负号)部分,保留纯数字:

curl -s wttr.in/Amsterdam?format=%t | sed 's/[^0-9-]//g'
  • -s 参数让curl静默执行,不显示进度条
  • sed 's/[^0-9-]//g' 表示将所有**不是数字0-9和负号-**的字符替换为空,最终得到纯数字温度(零下温度会保留负号)

如果你的音频文件不需要处理零下温度(无负号命名的文件),可以去掉正则中的-:

curl -s wttr.in/Amsterdam?format=%t | sed 's/[^0-9]//g'

方法2:使用grep提取数字片段

用grep的正则匹配功能直接提取数字部分:

curl -s wttr.in/Amsterdam?format=%t | grep -oE '[-0-9]+'
  • -o 参数让grep只输出匹配到的内容
  • -E 启用扩展正则表达式,[-0-9]+ 匹配连续的负号和数字组合,精准提取纯数字温度

整合到自动化流程

可以将提取到的温度存入变量,直接用于调用对应的音频文件:

# 获取纯数字温度
current_temp=$(curl -s wttr.in/Amsterdam?format=%t | sed 's/[^0-9-]//g')
# 推送音频文件到播出系统(替换成你的实际播出命令)
your-broadcast-system-command "$current_temp.FLAC"

内容的提问来源于stack exchange,提问作者typecrazy789

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 13:53:20