Powrót skryptu Bash z różnymi kodami powrotu na wyjściu

Powrót skryptu Bash z różnymi kodami powrotu na wyjściu
Kody wyjściowe to liczby liczb całkowitych, które wskazują, że skrypt został pomyślnie wykonany. Kody te są również znane jako kody zwrotne lub statusy wyjścia. Kody wyjścia zwykle zwracają zero po pomyślnym wykonaniu i niezerowym po nieudanym wykonaniu.

Jednak wielu użytkowników skryptów BASH chce zwrócić z różnymi kodami powrotnymi podczas wyjścia, ale otrzymują błędy. W tym samouczku wyjaśnimy różne podejścia, aby skrypt bash powrócił z różnymi kodami powrotu po wyjściu.

Skrypt bash zwraca z różnymi kodami powrotu na wyjściu

Przed przejściem do metod spójrzmy na kody wyjściowe, które mają określone znaczenie:

Kody wyjścia Opis
0 Skrypt jest wykonywany pomyślnie.
1 Skrypt jest wykonywany z ogólnymi błędami.
2 Nieprawidłowe użycie niektórych wbudowanych poleceń w skrypcie.
126 Pokazuje błąd dla polecenia, które jest wywoływane i nie można go wykonać.
127 Polecenie nie istnieje w skrypcie.
128 Pokazuje kod wyjściowy poza zasięgiem lub śmiertelny sygnał błędu.
130 Ctrl+C kończy skrypt.
255 Ogólny kod błędu skryptu.

Jak uzyskać kody powrotu podczas wyjścia?

Musisz tylko napisać „echo $?„Polecenie, aby uzyskać kod powrotu. Na przykład chcesz porównać dwie liczby za pomocą następującego skryptu Bash:

Po wykonaniu skryptu w terminalu uruchom „Echo $?„Aby uzyskać kod powrotu na wyjściu:

./porównanie.cii
Echo $?

Porównanie.sh ”jest wykonywane pomyślnie. Dlatego terminale wykazują zero jako kod powrotu. Podobnie, uzyskasz niezerowe jako pomyślne wykonanie skryptu. Na przykład, jeśli używasz LS zamiast polecenia LS w skrypcie, możesz uzyskać niezerową jako kod powrotu:

Jak widać na poprzednim obrazie, terminal pokazuje 127 jako kod powrotu, ponieważ skrypt zawierał niewłaściwe polecenie:

Spraw, aby skrypt bash powrócił z różnymi kodami wyjściowymi

Możesz ręcznie skonfigurować kody wyjściowe w skrypcie. Na przykład, jeśli chcesz uzyskać 255 jako kod wyjścia, użyj następującego skryptu:

Teraz wykonaj skrypt, a następnie uruchom „echo $?„Polecenie, aby uzyskać 255 jako kod powrotu:

./porównanie.cii
Echo $?

Wniosek

Chodzi o kody wyjściowe, które możesz uzyskać po wykonaniu skryptu Bash w Linux. Kody wyjścia pomagają użytkownikowi zidentyfikować status skryptu Bash. Możesz także ręcznie skonfigurować i użyć różnych kodów powrotu. Dlatego możesz uzyskać niezerowy kod wyjściowy zamiast zero, nawet jeśli skrypt zostanie pomyślnie wykonywany. Jeśli chcesz dowiedzieć się więcej o skryptach Bash, przejrzyj naszą oficjalną stronę internetową.