Bash:
Skriva ut felsökningsdata

How to:

För att visa felsökningsinformation i Bash använder du echo eller printf. Här är exempel:

# Använd echo för att skriva ut enkel text
echo "Det här är en debug-meddelande"

# Skriv ut variabelvärden
debug_variable="ett värde"
echo "Debug: variabeln har värdet '$debug_variable'"

# Avancerad: Använd printf för formatering
printf "Filen %s har %d rader\n" $filnamn $radantal

Exempel på output:

Det här är en debug-meddelande
Debug: variabeln har värdet 'ett värde'
Filen script.sh har 42 rader

Deep Dive

Debugging uppstod ur behovet att förstå vad som hände inuti datorer. På 1940-talet tog operatörer bort faktiska insekter ur hålkortsläsare för att “debugga” problem, därav termen.

I Bash-scripting kommer echo och printf ofta till användning för att skriva ut felsökningsmeddelanden. echo är enklare men mindre flexibel. printf erbjuder formatering, vilket är användbart om du behöver mer kontroll över hur output ser ut.

Bash-version 4 introducerade printf -v som tillåter dig att tilldela formatsträngars resultat direkt till variabler, utan subshell.

För att undvika att felsökningsmeddelanden blandas med vanlig output kan du använda skilda filströmmar. Standard är filström 1 för normal output och filström 2 för error-meddelanden. Lägg till 1>&2 för att skicka en debug-meddelande till felströmmen.

Exempel:

echo "Detta kommer att synas i terminalen" 1>&2

Du kan även omdirigera dessa meddelanden till en fil eller en annan kommand för vidare analys.

Se Även