摘要:你可能会问,浏览器和手机 App 不香吗?为什么非要用命令行?答案很简单:命令行有它的独特魅力。首先,它快——敲几个字符,几秒钟就能看到结果,不用打开臃肿的图形界面。其次,它灵活——你可以把天气数据塞进脚本,自动跑任务,甚至跟其他工具联动。最后,它轻量——在服
你可能会问,浏览器和手机 App 不香吗?为什么非要用命令行?答案很简单:命令行有它的独特魅力。首先,它快——敲几个字符,几秒钟就能看到结果,不用打开臃肿的图形界面。其次,它灵活——你可以把天气数据塞进脚本,自动跑任务,甚至跟其他工具联动。最后,它轻量——在服务器或老旧设备上,命令行简直是救命稻草。更别提那种敲代码查天气的“极客感”,是不是有点酷?
在 Linux 中用命令行查天气之前,得确保系统里有些基本工具。大部分现代 Linux 发行版(比如 Ubuntu、Debian、Fedora)默认都带了一些基础命令,但我们还是得检查一下,顺便装点“秘密武器”。
curl 是我们今天的主力军之一,它能从网上抓取数据。打开终端,输入:
curl --version如果看到版本信息,恭喜你,已经就位。如果提示“command not found”,别慌,安装一下就行:
「Ubuntu/Debian」:sudo apt-get install curl「Fedora」:sudo dnf install curl「Arch Linux」:sudo pacman -S curl天气数据都来自网络,所以确保你的 Linux 机器能上网。可以用 ping 测试一下:
ping -c 4 baidu.com如果有响应,网络没问题。如果不通,检查网络设置,这里就不展开了。
准备好了吗?接下来,咱们开始用命令行“召唤”天气预报!
❝
最简单粗暴的方式
❞
wttr.in 是一个神奇的网站,专门为命令行爱好者提供天气服务。只要用 curl 访问它,就能拿到天气数据。
试试这个:
curl wttr.in回车后,你会看到终端里蹦出一堆天气信息:温度、湿度、风速,甚至还有个简陋的 ASCII 云朵图标!它会根据你的 IP 地址自动定位城市,懒人福音。
想查特定城市?直接加城市名,比如:
curl wttr.in/Beijing这会显示北京的天气。城市名用英文,拼写要正确(大小写无所谓)。
wttr.in 支持一堆参数,简直是宝藏。
比如:
「中文显示」:加 ?lang=zh:curl wttr.in/Beijing?lang=zh「公制单位」(摄氏度、公里):加 ?m: curl wttr.in/Beijing?m
「简洁模式」(只看关键信息):加 ?0: curl wttr.in/Beijing?0
「未来三天预报」:加 ?3: curl wttr.in/Beijing?3
组合起来试试:
curl wttr.in/Beijing?lang=zh&m&0这会给你一个中文、简洁、公制单位的北京天气预报。是不是很方便?
curl wttr.in/Beijing | less❝
老派但靠谱
❞
weather-util 是个专门为命令行设计的天气工具,虽然界面没那么花哨,但数据很全面。
先安装它:
「Ubuntu/Debian」:sudo apt-get install weather-util安装完后,得配置一下。它用机场代码(METAR 站代码)定位。先查查你所在城市的代码,比如北京的是 ZBAA(谷歌一下“城市名 METAR code”就行)。然后:
weather -i ZBAA这会显示北京的天气,单位默认是英制(华氏度、英里)。
每次都输代码太麻烦?可以设个默认站。编辑 ~/.weatherrc 文件(没有就新建):
echo "set default_station=ZBAA" > ~/.weatherrc之后直接跑:
weather就行了。
「公制单位」:加 --metric:weather --metric「未来预报」:加 -f 和天数:weather -f 3「详细模式」:加 -v:weather -vweather-util 的数据来自气象站,可能没有 wttr.in 那么花哨,但胜在稳定,适合硬核玩家。
❝
API 驱动的现代派
❞
如果你想要更精确的数据,可以试试 weatherman,它用 OpenWeatherMap 的 API。
先安装:
git clone https://github.com/bjesus/weatherman.gitcd weathermanmake install(需要 make 和 gcc,没装的话用包管理器装一下。)
weatherman 需要 API 密钥。去 OpenWeatherMap 注册,拿到密钥后,编辑 ~/.weatherman.conf:
api_key=你的密钥city=Beijing保存后,运行:
weatherman就会显示北京的天气。
❝
curl 的优雅替代品
❞
如果你觉得 curl 太朴素,可以试试 httpie,一个更人性化的 HTTP 客户端。先安装:
「Ubuntu/Debian」:sudo apt-get install httpie用法跟 curl 差不多,但输出更漂亮:
http wttr.in/Beijing效果和 curl 一样,但颜色更鲜艳,阅读体验更好。参数也一样支持,比如:
http wttr.in/Beijing?lang=zh&m来源:wljslmz