Fox, ma se tu lo lanci con l'opzione -x quando si ferma vedi il punto dello script dove si è fermato, lo editi e vai ad intervenire su quella parte. Se non trova determinati file o librerie per una differenza di path, gli riscrivi tu quello giusto. Se invece è perchè ad esempio cerca il file che ti indica il tipo di distribuzione, o qualcosa di realmente ininfluente, puoi semplicemente cancellare quella parte, o più prudentemente commentarla.
Un installer di 2500 righe comunque se non sai dove metterci le mani ti fa perdere non poco tempo, ma se identifichi subito dove si blocca la cosa dovrebbe essere molto più veloce...
Il 11/02/2013 15:17, Fox ha scritto:
Grazie.
Devo cercare di capire dei controlli che fa un installer di un
gestionale... circa un 2500 righe tra i 3 files che mi interessano.
Niente di impossibile eh... mica devo leggere tutto... mi chiedevo solo se
esisteva qualcosa tipo pappa pronta.
Il gestionale vuole o suse o RH
io ho messo apposta una Centos... solo che non gradisce.
Ad ogni versione riescono a modificare gli script, cosi ad ogni
aggiornamento devo impazzire per cercare di fregare i controlli.
uff
2013/2/11 Luigi B <luigi.b@alice.it>
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<http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking>
Concordo con il buon Nextime! Anch'io come debug degli script bash usohttp://tldp.org/LDP/Bash-**Beginners-Guide/html/sect_02_**03.html<http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html>
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):
______________________________**_________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/**mailman/listinfo/talking<http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking>
_______________________________________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking
_______________________________________________
Talking mailing list
Talking@ml.linuxvar.it
http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking
_______________________________________________ Talking mailing list Talking@ml.linuxvar.it http://ml.linuxvar.it/cgi-bin/mailman/listinfo/talking