Vendar se mnogi uporabniki skripta Bash ob izhodu želijo vrniti z različnimi povratnimi kodami, vendar dobijo napake. V tej vadnici bomo razložili različne pristope za vrnitev skripta Bash z različnimi povratnimi kodami ob izhodu.
Skript Bash se ob izhodu vrne z različnimi povratnimi kodami
Preden preidemo na metode, si poglejmo izhodne kode, ki imajo posebne pomene:
Izhodne kode | Opis |
0 | Skript je uspešno izveden. |
1 | Skript se izvaja s splošnimi napakami. |
dva | Neveljavna uporaba nekaterih vgrajenih ukazov v skriptu. |
126 | Prikazuje napako za ukaz, ki je bil priklican in ga ni mogoče izvesti. |
127 | Ukaz ne obstaja v skriptu. |
128 | Prikazuje izhodno kodo izven obsega ali signal usodne napake. |
130 | CTRL+C prekine skript. |
255 | Splošna koda napake napake skripta. |
Kako pridobiti povratne kode ob izhodu?
Napisati morate samo 'echo $?' ukaz za pridobitev povratne kode. Na primer, želite primerjati dve številki z naslednjim skriptom Bash:
Ko izvedete skript v terminalu, zaženite »echo $?« za pridobitev povratne kode ob izhodu:
. / primerjava.sh
odmev $?
'Comparison.sh' je uspešno izveden. Zato terminali prikazujejo nič kot povratno kodo. Podobno boste za uspešno izvedbo skripta dobili vrednost, ki ni enaka nič. Na primer, če v skriptu uporabite Ls namesto ukaza ls, lahko kot povratno kodo dobite različno od nič:
Kot lahko vidite na prejšnji sliki, terminal prikazuje 127 kot povratno kodo, ker je skript vseboval napačen ukaz:
Naredite vrnitev skripta Bash z različnimi izhodnimi kodami
V skriptu lahko ročno nastavite izhodne kode. Na primer, če želite dobiti 255 kot izhodno kodo, uporabite naslednji skript:
Zdaj izvedite skript in nato zaženite 'echo $?' ukaz za pridobitev 255 kot povratne kode:
. / primerjava.shodmev $?
Zaključek
To je vse o izhodnih kodah, ki jih lahko dobite po izvedbi skripta Bash v Linuxu. Izhodne kode pomagajo uporabniku prepoznati status skripta Bash. Lahko tudi ročno nastavite in uporabite različne povratne kode. Zato lahko dobite neničelno izhodno kodo namesto ničle, tudi če je skript uspešno izveden. Če želite izvedeti več o skriptih Bash, pobrskajte po naši uradni spletni strani.