|
|
|
|
移动端

在Linux字符界面中获取天气预报

无需打开网页浏览器就能直接从终端获取最新的天气预报那该多方便啊,对吧?你还能把它写成脚本,或者设置定义定时任务。http://wttr.in 是一个允许你搜索世界各地天气预报的网站,而且它的是以 ASCII 字符的形式来显示结果的。通过使用 cURL 访问 http://wttr.in,就能直接在终端显示查询结果了。

作者:Nick Congleton来源:Linux中国|2018-01-29 11:25

技术沙龙 | 6月30日与多位专家探讨技术高速发展下如何应对运维新挑战!


在Linux字符界面中获取天气预报

目标:使用 Linux 命令行显示天气预报。

发行版:所有 Linux 发行版。

要求:能连上因特网的 Linux

难度:容易

约定:

  • # - 需要使用 root 权限来执行指定命令,可以直接使用 root 用户来执行也可以使用 sudo 命令
  • $ - 可以使用普通用户来执行指定命令

简介

无需打开网页浏览器就能直接从终端获取最新的天气预报那该多方便啊,对吧?你还能把它写成脚本,或者设置定义定时任务。

http://wttr.in 是一个允许你搜索世界各地天气预报的网站,而且它的是以 ASCII 字符的形式来显示结果的。通过使用 cURL 访问 http://wttr.in,就能直接在终端显示查询结果了。

获取所在地的天气

Local weather from wttr.in

Local weather from wttr.in

要抓取所在地的天气情况非常简单。wttr.in 会自动根据 IP 地址来探测你的所在地。除非你用了 VPN,否则它的精度还不错。

  1. $ curl wttr.in

获取指定城市的天气

Weather by city from wttr.in

Weather by city from wttr.in

你可以通过在 wttr.in 后加上斜杠和城市名称的方式来获得其他城市的天气情况。不过要把名字中的空格替换成 +

  1. $ curl wttr.in/New+York

你也可以以 Unix 时区的形式来填写城市名称。

  1. $ curl wttr.in/New_York

不要直接使用空格,否则会出现奇怪而不准确的结果。

获取机场天气

Weather by airport from wttr.in

Weather by airport from wttr.in

若你对地区的三位机场代号很熟悉,你也可以使用机场代号来查询天气。一般来说使用机场要比使用城市更贴近你,而且更精确一些。

  1. $ curl wttr.in/JFK

猜测所在地

Weather by landmark from wttr.in

Weather by landmark from wttr.in

通过使用 ~ 字符,你可以让 wttr.in 通过地标来猜测天气情况。

  1. $ curl wttr.in/~Statue+Of+Liberty

域名所在地的天气

Weather by domain name from wttr.in

Weather by domain name from wttr.in

你想不想知道 LinuxConfig 托管地的天气?现在有一个方法可以知道!wttr.in 可以通过域名获取天气。是的,这个功能可能不那么实用,但这很有趣啊。

  1. $ curl wttr.in/@linuxconfig.org

更改温度单位

Change unit system in wttr.in

Change unit system in wttr.in

默认情况下,wttr.in 会根据你的实际地址来决定显示哪种温度单位(C 还是 F)。基本上,在美国,使用的是华氏度,而其他地方显示的是摄氏度。你可以指定显示的温度单位,在 URL 后添加 ?u 会显示华氏度,而添加 ?m 会显示摄氏度。

  1. $ curl wttr.in/New_York?m
  2.  
  3. $ curl wttr.in/Toronto?u

在 ZSH 上有一个很奇怪的 bug,会使得这两条语句不能正常工作,如果你需要更换单位,恐怕需要改成使用 Bash 了。

总结

你可以很方便地在脚本,定时任务,甚至 MOTD(LCTT 译注:Message Of The Day - 每日消息)中访问 wttr.in。当然,你完全没有必要这么做。当你需要查看天气预报的时候只需要访问一下这个超棒的网站就行了。

【编辑推荐】

  1. 如何在Linux中从PDF创建视频
  2. 一秒内诊断Linux服务器的性能
  3. python-hwinfo:使用Linux系统工具展示硬件信息概况
  4. 经验分享:拒绝学不会,Linux入门学习的三条军规!
  5. 如何在Linux/Unix/Windows中发现隐藏的进程和端口
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Grails权威指南

本书译自Grails项目负责人Graeme Keith Rocher所著的“The Definitive Guide to Grails”一书,着重介绍了如何在Grails框架下使用Groovy语...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊