11.04.2013 Views

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Esempio A-30. Uno script per il “podcasting”<br />

#!/bin/bash<br />

Appen<strong>di</strong>ce A. Script aggiuntivi<br />

# bashpodder.sh:<br />

# <strong>di</strong> Linc 10/1/2004<br />

# Trovate l’ultima versione dello script su http://linc.homeunix.org:8080/scripts/bashpodder<br />

# Ultima revisione 12/14/2004 - Molti collaboratori!<br />

# Se usate lo script e avete dei miglioramenti da suggerire o commenti da fare<br />

# inviatemi un’email a linc dot fessenden at gmail dot com<br />

# Lo gra<strong>di</strong>rei!<br />

# ==> Commenti extra per <strong>Guida</strong> ASB.<br />

# ==> L’autore dello script ha gentilmento acconsentito al suo inserimento<br />

# ==>+ in <strong>Guida</strong> ASB.<br />

# ==> ###################################################################<br />

#<br />

# ==> Cos’è il "podcasting"?<br />

# ==> È la trasmissione su internet <strong>di</strong> "programmi ra<strong>di</strong>ofonici".<br />

# ==> I programmi possono essere riascoltati con gli iPods e<br />

# ==> altri programmi <strong>di</strong> riproduzione <strong>di</strong> file musicali.<br />

# ==> Questo script ha lo scopo <strong>di</strong> rendere tutto questo possibile.<br />

# ==> Ve<strong>di</strong> la documentazione sul sito dell’autore dello script, più sopra.<br />

# ==> ###################################################################<br />

# Rende lo script adatto a crontab:<br />

cd $(<strong>di</strong>rname $0)<br />

# ==> Si sposta nella <strong>di</strong>rectory dove risiede lo script.<br />

# <strong>di</strong>rdati è la <strong>di</strong>rectory dove vengono salvati gli ipodcast:<br />

<strong>di</strong>rdati=$(date +%Y-%m-%d)<br />

# ==> Verrà creata una <strong>di</strong>rectory con nome: AAAA-MM-GG<br />

# Controlla e crea, se necessario, <strong>di</strong>rdati:<br />

if test ! -d $<strong>di</strong>rdati<br />

then<br />

mk<strong>di</strong>r $<strong>di</strong>rdati<br />

fi<br />

# Cancella i file temporanei:<br />

rm -f temp.log<br />

# Legge il file bp.conf file e usa wget su tutte le url non ancora<br />

#+ elencate nel file podcast.log:<br />

while read podcast<br />

do # ==> Main action follows.<br />

726

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!