WGET e reindirizzamenti con http-equiv=refresh content
Può capitare che serva schedulare un download periodico da un indirizzo che include un refresh intermedio di tipo http-equiv=refresh content
In questo caso wget sembra non riuscire ad intercettare il redirect e scarica solo il file HTML con contenuto le istruzioni per il browser.
Per ovviare ho creato un piccolo script che usa in combinata wget e grep:
#!/bin/bash
URL="http://www.miourl.com/path/"
REGEXP="http://[^[:space:]\"]*[zip$]"
FILE="/path/to/download/file.zip"
URL2=`wget -qO- $URL | grep -o -e $REGEXP`
wget $URL2 -O $FILE
Questo piccolo script in pratica si occupa di prelevare il file HTML che contiene la direttiva di refresh, estrapolarne il link ( in questo caso da http a zip ma basta adattare la regexp alle proprie esigenze), memorizzarlo in un ulteriore variabile e eseguire wget con il link giusto, la parte -O $FILE è facoltativa serve solo per salvare il file con un nome specifico invece che quello originale.