Wiki script - Lista delle guide: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
m
nessun oggetto della modifica
mNessun oggetto della modifica
mNessun oggetto della modifica
Riga 24: Riga 24:
# messaggi
# messaggi
message1 () {
message1 () {
  echo -n "Esiste già un file $file1 o $file2 o $file3. Sovrascrivere [S/n]? "
  echo -n "Esiste già un file "$file1" o "$file2" o "$file3". Sovrascrivere [S/n]? "
}
}


Riga 32: Riga 32:


# previene la cancellazione accidentale dei file
# previene la cancellazione accidentale dei file
if [ -f $file1 -o -f $file2 -o -f $file3 ]; then
if [ -f "$file1" -o -f "$file2" -o -f "$file3" ]; then
  message1
  message1
  read risp
  read risp
Riga 49: Riga 49:


# Cancella, se presente, il file listaguide_titoli
# Cancella, se presente, il file listaguide_titoli
if [ -f $file1 ]; then
if [ -f "$file1" ]; then
   rm $file1
   rm "$file1"
fi
fi


Riga 56: Riga 56:
while $x; do
while $x; do
  # scarica la prima pagina e ne filtra solo la riga con le guide. Il risultato va in tempfile1
  # scarica la prima pagina e ne filtra solo la riga con le guide. Il risultato va in tempfile1
  wget -q -O - "$url_pagina""$ext" | sed -n '/.*<td id/,1p' > $tempfile1
  wget -q -O - "$url_pagina""$ext" | sed -n '/.*<td id/,1p' > "$tempfile1"
  # Estrae i nomi delle guide dalla riga, cancella le righe che contengono <a o </a tranne la prima. Il risultato è in tempfile2
  # Estrae i nomi delle guide dalla riga, cancella le righe che contengono <a o </a tranne la prima. Il risultato è in tempfile2
  awk -F 'title=\"|\">' '{ for (i=6; i<=NF; i++) print $i }' $tempfile1 | sed '1b;/<\/\?a/d'> $tempfile2
  awk -F 'title=\"|\">' '{ for (i=6; i<=NF; i++) print $i }' "$tempfile1" | sed '1b;/<\/\?a/d'> "$tempfile2"
  # Nome della pagina successiva
  # Nome della pagina successiva
  ext="`awk -F '[()]' ' NR==1 { print $2 }' $tempfile2`"
  ext="`awk -F '[()]' ' NR==1 { print $2 }' "$tempfile2"`"
  if [ "$ext" = "" ]; then
  if [ "$ext" = "" ]; then
   # se non c'è nessuna pagina successiva, vengono cancellate eventuali righe vuote
   # se non c'è nessuna pagina successiva, vengono cancellate eventuali righe vuote
   sed -i '/^$/d' $tempfile2
   sed -i '/^$/d' "$tempfile2"
   x=false
   x=false
  else
  else
   # se esiste una pagina successiva, viene cancellata la prima riga e eventuali righe vuote
   # se esiste una pagina successiva, viene cancellata la prima riga e eventuali righe vuote
   sed -i '1d' $tempfile2
   sed -i '1d' "$tempfile2"
   sed -i '/^$/d' $tempfile2
   sed -i '/^$/d' "$tempfile2"
  fi
  fi
  # viene creato il file listaguide_titoli
  # viene creato il file listaguide_titoli
  cat $tempfile2 >> $file1
  cat "$tempfile2" >> "$file1"
done
done


Riga 80: Riga 80:


# rimozione file temporanei
# rimozione file temporanei
rm $tempfile1 $tempfile2
rm "$tempfile1" "$tempfile2"


</pre>
</pre>
6 999

contributi

Menu di navigazione