Ich fragte mich, wie schwer es ist, die aktuelle Temperatur für meinem Wohnort Dortmund zu bestimmen. Mit der Bash und mit Hilfe der Yahoo-Weather-API lies sich das Problem mit einer Zeile lösen. Die API benutzt eine sogenannte WOEID (Where On Earth ID), die ich mir aus der Adresszeile der Yahoo-Wetterseite geliehen habe. Für Dortmund lautet sie 645458.

curl -s 'http://weather.yahooapis.com/forecastrss?w=645458&u=c'
  | grep yweather:condition
  | sed -e 's/.*temp="//'
  | sed -e 's/".*//'
  1. Zunächst hole ich mir mit curl den RSS-Feed für meinen Ort und wähle mit u=c die Einheit Celsius für die Temperaturen. Die Option -s (silent) unterdrückt die Fortschrittsanzeige von curl.
  2. Mit grep extrahiere ich die Zeile mit den aktuellen Wetterinformationen.
  3. Sed schneidet anschließend den vorderen Teil der Anzeige bis zur Temperatur ab.
  4. Zum Schluss löscht das zweite sed alles ab dem Anführungszeichen hinter der Temperaturangabe.

Ich weiß natürlich, dass die Lösung eher schnell und pragmatisch, denn erweiterbar und robust ist. Ich hoffe, sie zeigt dennoch das Zusammenspiel verschiedener Linux-Tools und die Macht von Pipes.


Tafelbild Windows Spiele llm RSS esp8266 raspberrypi software c't hacking 34c3 bloggen das-labor cloud Kino Gesellschaft Tipp Latex Clonezilla Mathe lernen Geschichten Bilder e-mail Wissenschaft server TV ldlmooc Studium importiert Termin wiki Taschenrechner ccc Second Life Sport video game-engine ctf Chat pdf programmierung git mooc Datenbank ldl Tools Dortmund 35c3 podcast Informatik screencast fun bildung Funktionen HP35s python Twitter Film Comic Linkliste Text Konferenz kunst audio gamejam Spaß buch hardware admin Linux JavaScript