Weathercli
2026-03-31
新闻来源:网淘吧
围观:18
电脑广告
手机广告
天气命令行界面
使用weathercli命令获取全球任意地点的天气信息。
命令
当前天气
获取实时天气状况,包括温度、湿度、风和降水。

weathercli current "<location>"
weathercli current "<location>" --json
返回:当前温度、"体感"温度、湿度百分比、风速/风向、气压、云量、紫外线指数、降水、天气状况描述以及当地时区的时间戳。
天气预报
获取每日或每小时天气预报。
# Daily forecast (default: 7 days, max: 16)
weathercli forecast "<location>" --days <N>
# Hourly forecast (max: 384 hours)
weathercli forecast "<location>" --hourly --hours <N>
# JSON output for parsing
weathercli forecast "<location>" --json
返回:对于每天/每小时:温度(最高/最低或当前值)、天气状况、降水概率和降水量、风速/风向、紫外线指数、日出/日落时间(仅限每日预报)。
地点搜索
查找地点的坐标和时区信息。
weathercli search "<location>"
weathercli search "<location>" --json
返回:地点名称、坐标(纬度/经度)、国家、地区/州、时区。
地点格式
地点输入灵活,可自动进行地理编码:
- 城市名称:
"伦敦","东京","纽约" - 城市 + 国家:
"法国巴黎","德国柏林" - 城市 + 州/地区:
"俄勒冈州波特兰","加泰罗尼亚巴塞罗那" - 易混淆名称:添加国家/地区以确保准确性
选项
--json- 输出结构化JSON(推荐用于解析)--no-color- 禁用彩色输出(用于纯文本解析)--days N- 预报天数(1-16,默认:7)--hourly- 显示逐小时预报而非每日预报--hours N- 逐小时预报的小时数(1-384)--verbose- 显示详细的请求信息
输出格式
人类可读格式(默认)
温度值采用颜色编码,附带表情符号和单位。时间显示为当地时区时间。
JSON结构
当前天气:
{
"location": {
"name": "Tokyo",
"latitude": 35.6895,
"longitude": 139.6917,
"country": "Japan",
"timezone": "Asia/Tokyo"
},
"time": "2026-01-12T18:45:00+09:00",
"temperature": 4.7,
"apparent": 1.8,
"humidity": 66,
"wind_speed": 3.6,
"wind_direction": 135,
"condition": "Clear sky",
"weather_code": 0,
"precipitation": 0,
"cloud_cover": 0,
"pressure": 1015.2,
"uv_index": 0
}
预报:
{
"location": { ... },
"daily": [
{
"date": "2026-01-12",
"temp_max": 12.1,
"temp_min": 4.3,
"condition": "Slight rain",
"precip_prob": 75,
"precipitation": 1.5,
"sunrise": "2026-01-12T08:04:00+09:00",
"sunset": "2026-01-12T16:45:00+09:00",
"wind_speed_max": 15.3,
"wind_direction": 202,
"uv_index_max": 2.4
}
]
}
使用指南
适用场景
- 用户询问天气、温度、预报或气象状况时
- 规划活动需要天气数据时
- 查询是否会下雨、下雪或放晴时
- 为旅行计划获取气候信息时
- 需要日出/日落时间时
- 比较不同地区天气状况时
地点处理
- 若用户提供明确地点,则直接采用该地点信息
- 如果存在歧义(例如"波特兰"),请要求澄清或补充上下文
- 如果未找到地点,建议检查拼写或添加国家信息
- 对于坐标,请先使用
搜索命令进行验证
解析输出
- 始终使用
--json格式以便程序化解析 - 提取
温度、天气状况、风速用于快速摘要 - 检查
降水概率了解降雨可能性 - 使用
日出/日落时间安排白天活动 天气代码遵循世界气象组织标准(0-99)
最佳实践
- 旅行规划建议请求3-5天(非完整16天)
- 使用逐小时预报进行详细日程规划
- 查看
体感温度以了解实际舒适度 - 紫外线指数>3时建议采取防晒措施
- 风速>20公里/小时需提示有风
示例
快速天气查询:
weathercli current "London" --json | jq '.temperature, .condition'
旅行周度预报:
weathercli forecast "Barcelona" --days 5 --json
今日逐小时详情:
weathercli forecast "Seattle" --hourly --hours 24
查询多个城市:
for city in "Tokyo" "London" "New York"; do
weathercli current "$city" --json | jq -r '"\(.location.name): \(.temperature)°C, \(.condition)"'
done
查找精确位置:
weathercli search "Springfield" --json
注意事项
- 无需API密钥- 使用免费的Open-Meteo API
- 全球覆盖- 适用于全球任意地点
- 温度单位为摄氏度- 需要时可转换(°F = °C × 9/5 + 32)
- 风速(公里/小时)- 如需转换为英里/小时(乘以0.621)
- 本地时区- 所有时间自动转换
- 频率限制- 适用于个人/代理用途;避免频繁请求
- 准确度- 数据源自多个气象来源
- 更新频率- 当前天气每15分钟更新一次
- 离线状态- 需要网络连接
错误处理
未找到指定位置:
Error: location not found: Atlantis
→ 检查拼写,尝试添加国家/地区信息
网络错误:
Error: weather API error: network timeout
→ 稍后重试
输入无效:
Error: invalid days value
→ 检查--days参数需在1-16之间
安装
若天气命令行界面无法使用:
# Via Go
go install github.com/pjtf93/weathercli/cmd/weathercli@latest
# Or download binary from releases
# https://github.com/pjtf93/weathercli/releases
文章底部电脑广告
手机广告位-内容正文底部


微信扫一扫,打赏作者吧~