Bash:
Debuggerin käyttö

Miten:

Bash ei sisällä sisäänrakennettua debuggeria kuten jotkin muut kielet, mutta voit käyttää sisäänrakennettuja komentoja kuten set -x seurataksesi, mitä tapahtuu. Tai, parannuksena, on olemassa bashdb, asianmukainen debuggeri koodin läpikäymiseen. Tässä esikatsaus:

# Debuggauksen käyttö set -x:n avulla
set -x
echo "Aloitetaan debuggaus"
my_var="Hei, Debuggaus Maailma!"
echo $my_var
set +x

# Käyttäen bashdb:tä
# Asenna bashdb paketinhallintasi avulla, esim., apt, yum, brew.
# Debuggaa skriptiä nimeltä my_script.sh:
bashdb my_script.sh

Tuloste, kun ajetaan käyttäen set -x:

+ echo 'Aloitetaan debuggaus'
Aloitetaan debuggaus
+ my_var='Hei, Debuggaus Maailma!'
+ echo 'Hei, Debuggaus Maailma!'
Hei, Debuggaus Maailma!
+ set +x

Syväsukellus

Historiallisesti Bash-skriptien debuggaus tarkoitti koodisi täyttämistä echo-lauseilla. Mutta sitten tuli set -x, joka antoi meille kurkistuksen suoritusaikaan manuaalisia tulosteita vaatimatta. Ja niille, jotka kaipaavat enemmän kontrollia, ilmestyi bashdb-debuggeri, joka sai inspiraationsa gdb-debuggerista C/C++:lle.

Vaihtoehtojen osalta, set-komentojen (-x, -v, -e) lisäksi, muita vaihtoehtoja sisältävät tulosteen ohjaaminen tiedostoon analyysia varten tai ulkoisten työkalujen, kuten ShellCheckin, käyttäminen staattiseen analyysiin.

Toteutuksen kannalta, set -x on helppo; se on natiivi Bash-vaihtoehto, joka tulostaa komentoja ja niiden argumentteja niiden suoritushetkellä. bashdb puolestaan mahdollistaa koodin läpikäymisen, katkaisupisteiden asettamisen ja lausekkeiden arvioinnin - asioita, jotka antavat sinulle taistelumahdollisuuden hankalampia bugeja vastaan.

Katso Myös