Come eseguire l'eco dei comandi della shell mentre vengono eseguiti in Bash
L'eco dei comandi in Bash aiuta gli utenti e gli sviluppatori a capire cosa sta succedendo nei loro script. Visualizzando i comandi mentre vengono eseguiti, gli utenti possono verificare che lo script funzioni come previsto e identificare eventuali errori o comportamenti imprevisti, ecco alcuni modi per ripetere i comandi della shell in Bash:
Metodo 1: utilizzo del comando set
Il comando set in Bash può essere utilizzato per abilitare o disabilitare le opzioni e impostare i parametri della shell. Impostando il -X opzione, puoi abilitare la traccia della shell, che farà sì che Bash stampi ogni comando prima che venga eseguito.
#!/bin/bash
impostato -X
eco 'Ciao Linux!'
impostato +x
L'output di questo script includerà il comando eseguito:
Metodo 2: utilizzo del trap DEBUG
La trap DEBUG è una shell trap speciale che viene eseguita prima di ogni comando in uno script Bash. Definendo una funzione per il trap DEBUG, puoi stampare ogni comando prima che venga eseguito:
#!/bin/bash
funzione eseguire il debug {
eco ' $BASH_COMANDO '
}
trappola eseguire il debug DEBUG
eco 'Ciao mondo!'
trappola - DEBUG
L'output di questo script includerà il comando eseguito:
Metodo 3: utilizzo dell'opzione Bash -x
Puoi anche abilitare xtrace modalità passando il -X opzione al comando Bash durante l'esecuzione di uno script. Per illustrare l'uso di -X opzione qui è un semplice script Bash che stampa semplicemente una stringa usando il comando echo:
#!/bin/basheco 'Ciao Linux!'
Per eseguire questo script con la modalità xtrace abilitata, è possibile eseguire lo script utilizzando la sintassi indicata di seguito:
bash -X < nome-file-scipt >In questo esempio, il file Bash -X comando esegue lo script con xtrace mode abilitato, facendo in modo che la shell stampi ogni comando prima che venga eseguito. Il comando echo quindi stampa 'Ciao mondo!' alla consolle:
Conclusione
L'eco dei comandi della shell mentre vengono eseguiti è un modo efficace per eseguire il debug degli script Bash. Utilizzando il impostato comando, il -X opzione e il DEBUG trappola , puoi facilmente stampare ogni comando prima che venga eseguito.