[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux_var] debug script bash



Il 10/02/2013 21:50, nextime ha scritto:
On Sun, Feb 10, 2013 at 11:52:03AM +0100, Fox wrote:
Ciao,
volevo sapere se qualcuno sa se esiste uno strumento da cui lanciare uno
script bash e verificarne il funzionamento.
Tipo il debug che si fa sugli ide... (es. eclipse o netbeans )

:)

Di norma si lancia semplicemente aggiungendo il -x e osservando
la console ( o redirigendone stdout e stderr a un file )





_______________________________________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking


Concordo con il buon Nextime! Anch'io come debug degli script bash uso l'opzione -x

Con questa opzione scorre lo script passo a passo visualizzandolo anteponendo un "+", e mostra l'output normalmente.

Un po di esempi (nel quale "nome_script.sh" è lo script e "nome_script_debug" è il file nel quale si vuole scrivere l'output).

Normale:

$ bash -x nome_script.sh

se si vuole redirigere in un file senza visualizzare l'output:

$ bash -x nome_script.sh > nome_script_debug  2>&1

(ricordarsi di redirigere lo standard error nello standard output con "2>&1" se si vuole redirigere tale e quale quanto si vede a console, in caso contrario redirigerà solo l'output normale dello script)

se si vuole redirigere ma visualizzando l'output (usando "tee"):

$ bash -x nome_script.sh 2>&1 | tee nome_script_debug

Puoi anche aggiungere l'opzione "v" a "x" se vuoi un output ancora più dettagliato.

Ti passo anche un link che spiega alcune cose (tra l'altro l'uso di "set", utile, tra le altre cose, per fare il debug di script particolarmente lunghi):
http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html





_______________________________________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking