Script - PKGMNG

Lun, 12/11/2007 - 13:17

Script - PKGMNG

Inviato da farthest 1 commento

Lo script che voglio proporvi ha la semplice funzione di creare una lista dei pacchetti installati e rispetto a questa lista di aggiornare il vostro sistema.
È uno script essenziale, un po' scarno ma dovrebbe fare quello per cui è stato creato.

ATTENZIONE! Non rispondo di eventuali danni.

Donwload: pkgmng.bash.tar.gz

Il codice:
#!/bin/bash<br />#<br /># autore: Maurizio farthest<br />#<br /># Questo script è a vostro rischio e pericolo. <br /># Non mi prendo nessuna responsabilità per danni, <br /># perdite di dati, mal configurazione e quant'altro.<br />#<br /># Licenza: GPL3<br /><br />##FUNZIONI<br />checkr00t(){<br />if [ $UID -ne 0 ]; then<br />      echo -e "\nERRORE\nNon sei r00t.\nPer avviare lo script è necessario avere i permessi di amministratore."<br />        exit 1<br />fi<br />}<br /><br />msg_1(){<br /> echo -e "I sistema è aggiornato alla lista 'lista_pacchetti.txt'."<br /><br /> pulizie<br />   exit 0<br />}<br />msgerr_1(){<br />    echo -e "\nERRORE\nNon hai fatto nessuna scelta. Lo script terminerà. :-(\n"<br />     exit 1<br />}<br />msg_err_2(){<br />   echo -e "\nERRORE\nScelta errata. Lo script terminerà. :-(\n"<br />    exit 1<br />}<br />msgerr_3(){<br />    echo -e "\nIl file non esiste o il percorso è errato.\nLo script terminerà. :-(\n"<br />      exit 1<br />}<br />msgerr_4(){<br />    echo -e "\nATTENZIONE\nNon è stato possibile installare il pacchetto '$PKG' perché non disponibile."<br />    PKG_MANCANTI="$PKG_MANCANTI\n$PKG"<br />}<br /><br />crea_lista(){<br />        rpm -qa --queryformat '%{NAME}\n'|sort > lista_pacchetti.txt<br />}<br /><br />confronta_liste(){<br /> rpm -qa --queryformat '%{NAME}\n'|sort > lista_attuale.tmp<br />        <br />  echo -e "\nIndica percorso del file 'lista_pacchetti.txt'.\nSe è nella cartella corrente digita 'Invio'."<br />        read OUTPUT02<br /><br />       [ -n "$OUTPUT02" ] && echo $OUTPUT02|grep -v "/$" && OUTPUT02="$OUTPUT02/"<br />        [ -e "$OUTPUT02"lista_pacchetti.txt ] || msgerr_3<br /> <br />  test -z "`diff lista_attuale.tmp "$OUTPUT02"lista_pacchetti.txt`" && msg_1<br /><br />  diff lista_attuale.tmp "$OUTPUT02"lista_pacchetti.txt | grep "^>" |sed "s/^>[[:space:]]//g" > lista_pacchetti_da_installare.tmp<br />}<br /><br />installa_lista(){<br />       while read PKG; do<br />                urpmi "$PKG" || msgerr_4<br />  done < lista_pacchetti_da_installare.tmp<br />}<br /><br />pulizie(){<br />     rm -f lista_pacchetti_da_installare.tmp<br />   rm -f lista_attuale.tmp<br />}<br /><br />echo -e "\nBenvenuto in PKGMNG.\nScegli un azione:\nNum.\tAzione\n[1]\tCrea lista pacchetti;\n[2]\tInstalla la lista dei pacchetti."<br />read OUTPUT01<br /><br />[ -z "$OUTPUT01" ] && msgerr_1<br />case $OUTPUT01 in<br />        1 ) crea_lista ;;<br /> 2 ) checkr00t; confronta_liste; installa_lista ;;<br /> * ) msg_err_2 ;;<br />esac<br /><br />#pkg_mancanti<br />echo -e "\nATTENZIONE\nLista dei pacchetti mancanti:$PKG_MANCANTI"<br /><br />pulizie<br /><br />exit 0

Un ringraziamento a gerlos, altrimenti questo script non esisterebbe.

Ciao Wink by farthest


In:



Commenti

Ritratto di farthest
#1

Inviato da farthest il Mer, 02/01/2008 - 23:28.

Nuovo link

Ciao
il link in cui è segnalato il pacchetto non è più disponibile ma è possibile trovarlo qui.
Scusate per il disguido.

Ciao