Creazione automatica di un file di log per inviare quesiti al forum: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
(+ 1.0.25)
Riga 49: Riga 49:
utente=`logname`
utente=`logname`
nomehost=`hostname`
nomehost=`hostname`
# Codici stile carattere
ROSSO="\033[01;31m" # colore rosso
VERDE="\033[01;32m" # colore verde
BOLD="\033[01m" # grassetto
FINE="\033[0m" # reset




Riga 62: Riga 68:
*                                                                              *
*                                                                              *
*  Script che crea un log utile alla risoluzione dei problemi più comuni        *
*  Script che crea un log utile alla risoluzione dei problemi più comuni        *
*  Versione 1.0.24                                                             *
*  Versione 1.0.25                                                             *
*                                                                              *
*                                                                              *
*********************************************************************************"
*********************************************************************************"
Riga 112: Riga 118:


# --------------------------------------------------------------------------
# --------------------------------------------------------------------------
# Funzioni per l'invio del log a paste.debian.net
# --------------------------------------------------------------------------
# Funzione per separare il log in parti per l'invio a paste.debian.net
# Funzione per separare il log in parti per l'invio a paste.debian.net
# --------------------------------------------------------------------------
 
function _split_and_send {
function _split_and_send {
   local paste_url='http://paste.debian.net'
   local paste_url='http://paste.debian.net'
Riga 183: Riga 192:
}
}


# --------------------------------------------------------------------------
# Funzione che invia il log a paste.debian.net
# Funzione che invia il log a paste.debian.net
# --------------------------------------------------------------------------
function _upload {
function _upload {
   local risp
   local risp
Riga 273: Riga 280:
     read num
     read num
     case $num in
     case $num in
       1)
       [1-7]) _wait   ;;& # ;;& -> va alla successiva occorrenza del carattere immesso
        _wait
      1) _rete   ;;&
        _rete
       2) _video ;;&
        break
       3) _audio ;;&
        ;;
       4) _apt   ;;&
       2)
       5) _mount ;;&
        _wait
       6) _tpad   ;;&
        _video
       7) _common ;;&
        break
      [1-7]) break   ;; # Termina il ciclo 'while'
        ;;
       0) _exit   ;; # È stato inserito '0' . Uscita dallo script
       3)
       *) # Tutti gli altri caratteri. Cancella l'input immesso e ripete la domanda
_wait
tput cuu1 # in alto di una riga
_audio
tput ed # cancella fino alla fine dello schermo
break
;;
       4)
_wait
_apt
break
;;
       5)
_wait
_mount
break
;;
       6)
_wait
_tpad
break
;;
       7)
        _wait
        _common
        break
        ;;
       0)
        _exit
        ;;
       *)
        tput cuu1 # in alto di una riga
        tput ed # cancella fino alla fine dello schermo
     esac
     esac
   done
   done
Riga 324: Riga 303:
# Funzione che stampa un pallino di colore verde in caso di comando con output
# Funzione che stampa un pallino di colore verde in caso di comando con output
function _ok {
function _ok {
   echo -e "[\033[\033[01;32m•\033[0m]  $1"
   echo -e "[$VERDE•$FINE]  $1"


}
}
Riga 330: Riga 309:
# Funzione che stampa una pallino rosso in caso di comando privo di output
# Funzione che stampa una pallino rosso in caso di comando privo di output
function _error {
function _error {
   echo -e "[\033[\033[01;31m•\033[0m]  $1"
   echo -e "[$ROSSO•$FINE]  $1
}
}


Riga 350: Riga 329:
# Stampa la data corrente nel file di log
# Stampa la data corrente nel file di log
function _data {
function _data {
   echo "Log creato il `date +%d\ %B\ %Y\ alle\ %H:%M`" >> $log
   echo "Log creato il `date +%d\ %B\ %Y\ alle\ %H.%M`" >> $log
}
}


Riga 361: Riga 340:
function _exit {
function _exit {
   if [ -f $log ]; then
   if [ -f $log ]; then
     echo -e "\nFile contenente il log dello script: \033[01m$log\033[0m"
     echo -e "\nFile contenente il log dello script: $BOLD$log$FINE"
   else
   else
     echo -e "\nNon è stato creato un file di log"
     echo -e "\nNon è stato creato un file di log"
Riga 367: Riga 346:
    
    
   if [ -f $complog ]; then
   if [ -f $complog ]; then
     echo -e "File compresso da allegare alla discussione sul forum: \033[01m$complog\033[0m"
     echo -e "File compresso da allegare alla discussione sul forum: BOLD$complog$FINE"
   else
   else
     echo "Non è stato creato un file compresso del log"
     echo "Non è stato creato un file compresso del log"
Riga 434: Riga 413:
   _dir "/etc/X11/xorg.conf.d/"
   _dir "/etc/X11/xorg.conf.d/"
   _file "/var/log/Xorg.0.log"
   _file "/var/log/Xorg.0.log"
  _comando "/usr/sbin/dkms status"
   _pack "xserver-xorg"
   _pack "xserver-xorg"
   _pack "nouveau"
   _pack "nouveau"
Riga 536: Riga 516:
       case $1 in
       case $1 in
/etc/network/interfaces)
/etc/network/interfaces)
                      # Nasconde nel log gli ESSID e le password criptate contenute in /etc/network/interfaces
      sed -r "s/((wpa-ssid)|(wpa-psk)).*/\1 \*script-removed\*/" $1 &>> $log && _ok $1 || _error $1
      sed -r "s/((wpa-ssid)|(wpa-psk)).*/\1 \*script-removed\*/" $1 &>> $log && _ok $1 || _error $1
      ;;
      ;;
Riga 550: Riga 531:
sed -n 'H; /rsyslogd.*start$/h; ${g;p;}' $1.1 >> $log && _ok $1.1 || _error $1.1
sed -n 'H; /rsyslogd.*start$/h; ${g;p;}' $1.1 >> $log && _ok $1.1 || _error $1.1
      fi
      fi
                       # Nasconde nel log i parametri delle connessioni gestite da NetworkManager
                       # Nasconde nel log i parametri delle connessioni gestite da NetworkManager e contenute in syslog
      sed -i -r "s/(NetworkManager.*keyfile.*((parsing)|(read connection))).*/\1 \*script-removed\*/" $log
      sed -i -r "s/(NetworkManager.*keyfile.*((parsing)|(read connection))).*/\1 \*script-removed\*/" $log
      ;;
      ;;
Riga 767: Riga 748:
== Changelog ==
== Changelog ==
<!-- Qui vanno inserite le spiegazioni di eventuali modifiche dello script (chi, cosa, quando). Ricordarsi di modificare la versione all'interno del codice (la versione iniziale è 1.0.0) -->
<!-- Qui vanno inserite le spiegazioni di eventuali modifiche dello script (chi, cosa, quando). Ricordarsi di modificare la versione all'interno del codice (la versione iniziale è 1.0.0) -->
;1.0.25
:''Aggiunti codici carattere e accorciato il "case" di scelta''
:''Aggiunto comando "dkms status" a problemi video.
:''Modifiche minori''
:[[Utente:S3v|S3v]] 11:17, 31 dic 2013 (CET)
;1.0.24
;1.0.24
:''Aggiunta la scelta per problemi generici''
:''Aggiunta la scelta per problemi generici''
Riga 772: Riga 758:
:[[Utente:S3v|S3v]] 15:24, 6 dic 2013 (CET)
:[[Utente:S3v|S3v]] 15:24, 6 dic 2013 (CET)
;1.0.23
;1.0.23
:''rimossa la variabile "stat_log" e l'umask per permettere l'esecuzione dello script ALSA''
:''rimossa la variabile "stat_log" e modificato l'umask per permettere l'esecuzione dello script ALSA''
:''logname al posto di who''
:''logname al posto di who''
:''create funzioni _audio (problemi audio) e _tpad (problemi touchpad)''
:''create funzioni _audio (problemi audio) e _tpad (problemi touchpad)''