Många Bash-skriptanvändare vill dock återvända med olika returkoder vid utgång, men de får fel. I den här handledningen kommer vi att förklara de olika tillvägagångssätten för att få ett Bash-skript att returnera med olika returkoder vid utgång.
Bash Script returnerar med olika returkoder vid utgång
Innan vi går vidare till metoderna, låt oss ta en titt på utgångskoderna som har specifika betydelser:
Avsluta koder | Beskrivning |
0 | Skriptet körs framgångsrikt. |
1 | Skriptet körs med allmänna fel. |
två | Ogiltig användning av vissa inbyggda kommandon i skriptet. |
126 | Visar felet för kommandot som anropas och inte kan utföras. |
127 | Kommandot finns inte i skriptet. |
128 | Visar utgångskoden utanför räckvidden eller signalen för allvarligt fel. |
130 | CTRL+C avslutar skriptet. |
255 | En allmän felkod för skriptet. |
Hur får man returkoder vid utgång?
Du behöver bara skriva 'eko $?' kommando för att hämta returkoden. Till exempel vill du jämföra två siffror med följande Bash-skript:
När du kört skriptet i terminalen, kör 'echo $?' för att få returkoden vid utgång:
. / jämförelse.sh
eko $?
'comparison.sh' körs framgångsrikt. Det är därför terminaler visar noll som returkod. På samma sätt kommer du att få icke-noll som framgångsrik exekvering av skriptet. Till exempel, om du använder Ls istället för ls-kommandot i skriptet, kan du få icke-noll som returkod:
Som du kan se i föregående bild visar terminalen 127 som returkod eftersom skriptet innehöll fel kommando:
Gör en Bash Script Return med olika utgångskoder
Du kan manuellt ställa in utgångskoderna i skriptet. Om du till exempel vill få 255 som utgångskod, använd följande skript:
Kör nu skriptet och kör sedan 'echo $?' kommando för att få 255 som returkod:
. / jämförelse.sheko $?
Slutsats
Det här handlar om utgångskoderna som du kan få efter att ha kört Bash-skriptet i Linux. Exit-koder hjälper en användare att identifiera statusen för Bash-skriptet. Du kan också manuellt ställa in och använda de olika returkoderna. Därför kan du få en utgångskod som inte är noll istället för noll även om skriptet exekveras framgångsrikt. Om du vill veta mer om Bash-skripten, surfa på vår officiella hemsida.