Mnoho používateľov skriptu Bash sa však chce vrátiť s rôznymi návratovými kódmi pri ukončení, ale dostanú chyby. V tomto návode si vysvetlíme rôzne prístupy k návratu Bash skriptu s rôznymi návratovými kódmi pri ukončení.
Bash Script sa vracia s rôznymi návratovými kódmi pri ukončení
Predtým, ako prejdeme k metódam, pozrime sa na výstupné kódy, ktoré majú špecifický význam:
Výstupné kódy | Popis |
0 | Skript je úspešne vykonaný. |
1 | Skript sa vykonáva so všeobecnými chybami. |
dva | Neplatné použitie niektorých vstavaných príkazov v skripte. |
126 | Zobrazuje chybu príkazu, ktorý je vyvolaný a nemožno ho vykonať. |
127 | Príkaz v skripte neexistuje. |
128 | Zobrazuje výstupný kód mimo dosahu alebo signál fatálnej chyby. |
130 | CTRL+C ukončí skript. |
255 | Všeobecný chybový kód zlyhania skriptu. |
Ako získať návratové kódy na výstupe?
Stačí napísať „echo $?“ príkaz na získanie návratového kódu. Napríklad chcete porovnať dve čísla pomocou nasledujúceho skriptu Bash:
Po spustení skriptu v termináli spustite príkaz „echo $?“ ak chcete získať návratový kód pri výstupe:
. / porovnanie.sh
ozvena $?
Súbor „comparison.sh“ sa úspešne vykoná. Preto terminály zobrazujú ako návratový kód nulu. Podobne dostanete nenulovú hodnotu ako úspešné vykonanie skriptu. Ak napríklad v skripte použijete príkaz Ls namiesto príkazu ls, ako návratový kód môžete získať nenulové číslo:
Ako môžete vidieť na predchádzajúcom obrázku, terminál zobrazuje 127 ako návratový kód, pretože skript obsahoval nesprávny príkaz:
Vykonajte návrat Bash skriptu s rôznymi výstupnými kódmi
V skripte môžete manuálne nastaviť kódy ukončenia. Napríklad, ak chcete získať 255 ako výstupný kód, použite nasledujúci skript:
Teraz spustite skript a potom spustite príkaz 'echo $?' príkaz na získanie 255 ako návratový kód:
. / porovnanie.shozvena $?
Záver
Toto je všetko o ukončovacích kódoch, ktoré môžete získať po spustení skriptu Bash v systéme Linux. Výstupné kódy pomáhajú používateľovi identifikovať stav Bash skriptu. Môžete tiež manuálne nastaviť a použiť rôzne návratové kódy. Preto môžete získať nenulový kód ukončenia namiesto nuly, aj keď je skript úspešne vykonaný. Ak sa chcete dozvedieť viac o skriptoch Bash, pozrite si našu oficiálnu webovú stránku.