domenica 28 luglio 2013

Script per previsioni vento croate

Spesso quando sono in crociera in Croazia mi è utile sapere le previsioni del vento che ci saranno nelle prossime ore; il problema è che spesso in alcune isolette la connessione internet è precaria, ed accedere al sito completo richiede ore.

Questo script scarica le previsioni delle 48 ore successive e permette di scegliere:

  • l'area da scaricare (Istria o Dugi Otok/Zara)
  • la risoluzione temporale (3 ore per connessioni veloci, 6 ore per connessioni lente).
echo "================================"
echo "Download automatico meteo Aladin"
echo "================================"
echo ""
echo "Risoluzione temporale: "
PS3='Scegli: '
RISOLUZIONI=("Elevata(3h)" "Ridotta(6h)")
ris=0
select risoluzione in "${RISOLUZIONI[@]}"
do
  case $risoluzione in
    "Elevata(3h)")
      echo "Imposto risoluzione elevata"
      ris=3
      break
      ;;
    "Ridotta(6h)")
      echo "Imposto risoluzione ridotta"
      ris=6
      break
      ;;
    *) echo "Scelta errata";;
  esac
done
echo ""
echo "Che zona vuoi scaricare?"
ZONE=("Istria" "DugiOtok")
zona="nessuna"
url="http"
select zona in "${ZONE[@]}"
do
  case $zona in
    "Istria")
      echo "Scarico Istria"
      url="http://www.prognoza.hr/aladinHR/web_uv10_SENJ_"
      break
      ;;
    "DugiOtok")
      echo "Scarico Dugi Otok"
      url="http://prognoza.hr/aladinHR/web_uv10_MASL_"
      break
      ;;
    *) echo "Scelta errata";;
  esac
done
echo ""
ora=$(date +"%H")
startFrom=$(( $ora/$ris*$ris ))
outputDir=$(date +"%Y-%m-%d %H:%M")
mkdir "$outputDir"
cd "$outputDir"
rm $zona"*.gif"
for (( i = startFrom; i <= startFrom+48; i+=ris ))
do
  printf -v j "%02d" $i
  wget $url""$j"_e.gif" -O $zona"_"$j".gif"
done
cd ..
echo ""
echo "Operazione completata"