我Geektool
在 Mac 上使用它来在桌面上显示各种信息。其功能之一Geektoool
是能够使用 shell 模式启动自定义脚本或命令。我不熟悉任何类型的脚本编写,但通过复制和粘贴在网上找到一些可以使用的脚本。有整个网站专门致力于此。
很长一段时间以来,我一直使用命令从 Weather Underground 中获取一日天气预报。然而,他们已经更改了站点,并且需要编辑脚本的输出。我现在显示重复的信息。
例子
Today is forecast to be Cooler than yesterday.
"weather_quickie": "Today is forecast to be Cooler than yesterday."
该脚本结合了 Textutil 来输出。
curl -s http://www.wunderground.com/cgi-bin/findweather/getForecast?query=94965 |
awk '/Today is/ || /Tomorrow is/' | textutil -convert txt -stdin -stdout -format html
从 的手册页来看textutil
,该选项似乎-excludedelements
可用于编辑额外信息。但是我无法理解-excludedelements
解释,也不知道如何格式化它。
exceptedelements (tag1, tag2, ...) - 指定哪些 HTML 元素不应在生成的 HTML 中使用(该列表应该是单个参数,因此通常需要在 shell 上下文中引用)。
我想编辑输出的“weather_quickie”部分。任何见解将不胜感激。
答案1
感谢您的帮助拉梅什。事实证明安装起来太困难了w3m
。但是,根据您的脚本,我刚刚修改了原始脚本,现在得到了正确的输出。
前,
curl -s http://www.wunderground.com/cgi-bin/findweather/getForecast?query=94965 | awk '/Today is/ || /Tomorrow is/' | textutil -convert txt -stdin -stdout -format html
后,
curl ""http://www.wunderground.com/cgi-bin/findweather/getForecast?query=94965"" -s | textutil -convert txt -stdin -stdout -format html | awk '/Today is/'
答案2
您可以用来w3m
执行此操作。
curl ""http://www.wunderground.com/cgi-bin/findweather/getForecast?query=94965"" -s | w3m -dump -T text/html > 1.txt | awk '/Today is/ || /Tomorrow is/' 1.txt
输出
预计今天比昨天凉爽得多。下午有雷阵雨。