[linux] Re: script voor nllgg.nl

Bart-Jan Vrielink bartjan op vrielink.net
Wo Jul 25 17:19:08 CEST 2007


H. van Dijk wrote:
> On di, 2007-07-24 at 23:04 +0200, Jeroen van der Sande wrote:
>> Op dinsdag 24 juli 2007 20:06 kreeg ik van H. van Dijk het volgende:
>>> Hallo allen,
>>> Ik wil op onze site een leuk voorbeeldje van een script zetten maar ik
>>> ben daar niet zo goed in.
>>> Wie kan dit verbeteren en afmaken?
> Bedankt Jeroen (en Wietse, je moet wel de NL-tijd invullen, gebeurt dat
> bij jouw?).
> Ik ga dit op onze site
> ( http://www.nllgg.nl/mogelijkheden )
> zetten. Jeroen, mag ik je als auteur vermelden?

>  Dit heb ik nu:

> #! /bin/bash
> #Met dit programmaatje (script) dat men bij de opstart
> # en op regelmatige tijden kan laten lopen, wordt een png-bestand
> gemaakt die de verwachte buien boven Nederland op het hele uur na het
> huidige tijdstip laat zien. Dit bestand worden dan in een venster of als
> bureaublad getoond, of staat dan op de Desktop zodat men aan het
> icoontje de buien al kan zien aankomen.
> #Geef de datum en uur; verhoog uur met 1 en zet resultaat in $TYD
> TYD=$(echo $(date +%Y%m%d%H)+1|bc)00
> # De plaatjes worden gehaald uit:
> # http://www.buienradar.nl/
> wget -q -O kaart.gif "http://buienradar.nl/kaart.gif"
> # $TYD wordt ingevuld in de URL die de buien weergeeft en
> # de plaatjes worden in de persoonlijke map opgeslagen.
> wget -q -O buien.gif
> "http://buienradar.nl/images.aspx?jaar=-4&bliksem=0&voor=
> $TYD&soort=loop1uur&tijdid=$TYDID"
> # De twee plaatjes worden geconverteerd en over elkaar heen gelegd.
> convert -compose over -composite kaart.gif buien.gif buienkaart.png
> # Dit plaatje wordt getoond.
> display buienkaart.png
> # Zet desgewenst een hekje voor bovenstaande opdracht
> # om die uit te schakelen.

> # Haal het hekje weg bij het volgende commando om 
> # het plaatje als bureaubladachtergrond weer te geven.
> # Vervang padnaarplaatswaarbureaubladachtergrondstaat door juiste pad
> # mv buienkaart.png /padnaarplaatswaarbureaubladachtergrondstaat/
> Zal dit werkn????????
> # Haal het hekje weg bij het volgende commando om 
> # het plaatje als icoon op het bureaublad weer te geven.
> # mv buienkaart.png ~/Desktop/

Afgezien van het ontbreken van commentaar, lijkt dit me op een paar
punten beter:
bartjan op agrajag:~$ cat noodweer.sh
#!/bin/bash
tijd=`date -d'next hour' +%Y%m%d%H00`
wget -q -O kaart.gif "http://buienradar.nl/kaart.gif"
wget -q -O buien.gif \
"http://buienradar.nl/images.aspx?jaar=-4&bliksem=0&voor=${tijd}&soort=loop1uur&tijdid=${tijd}ID"
convert -compose over -composite kaart.gif buien.gif buienkaart.png
[ -x /usr/bin/xsetbg ] && /usr/bin/xsetbg -fullscreen buienkaart.png

xsetbg zit bij xloadimage, en is een handige manier om het bureaublad te
vullen. Als deze niet aanwezig is, dan kun je met xsetroot aan de slag,
maar dan zul je waarschijnlijk zelf aan de slag moeten met het resizen
van de image (en een ander formaat dan .png gebruiken, maar daar heb je
convert al voor).

> # Maak het programma zelf af om een kaartje te maken van de voorspelling
> voor het tweede hele uur.

Da's de kunst niet. Dit is veel leuker:
#!/bin/bash
wget -q -O kaart.gif "http://buienradar.nl/kaart.gif"
for uur in `seq 0 2`
do
  for minuut in `seq 0 5`;
  do
    tijd=`date -d"${uur} hour" +%Y%m%d%H${minuut}0`
    wget -q -O buien.gif \
"http://buienradar.nl/images.aspx?jaar=-4&bliksem=0&voor=${tijd}&soort=loop1uur&tijdid=${tijd}ID"
    convert -compose over -composite kaart.gif buien.gif \
buienkaart${tijd}.png
  done
done
animate -delay 10 buienkaart*.png

Helaas zijn er niet zo veel buienkaartjes beschikbaar op buienradar.nl
(ook niet verleden tijd). Wat ook jammer is is dat ik het niet met seq
voor elkaar krijg om een reeks 00 05 10 15 etc. te produceren, om ook
per 5 minuten wat te krijgen.
Natuurlijk, dit filmpje lijkt erg veel op wat er al op die site staat,
maar met Imagemagick en wat fantasie heb je zelf meer mogelijkheden ;)

-- 
Tot ziens,

Bart-Jan



More information about the Linux mailing list