Przejdź do głównej zawartości

exit


  • exit – wbudowane polecenie powłok Unix, kończące aktualny proces powłoki i zwracające kod statusu.
  • Kluczowe funkcje: zamykanie sesji interaktywnej, zakończenie skryptu, propagowanie kodu błędu do procesu nadrzędnego.
  • Dostępne w większości powłok Bourne‑podobnych (bash, zsh, dash, ksh, busybox sh) oraz w środowiskach POSIX.

Okno terminala
exit [n]
  • n — opcjonalny całkowity kod wyjścia (0‑255).
  • Jeśli n nie podano, zwracany jest status ostatnio wykonanego polecenia ($?).

ParametrOpis
nWartość statusu zakończenia. 0 = sukces; 1–255 = błąd/warunek zdefiniowany przez użytkownika.

Okno terminala
# Zakończ bieżącą sesję z kodem 0 (sukces)
exit
# Ustaw niestandardowy kod błędu
exit 42
# W skrypcie: zakończ, jeśli polecenie się nie powiedzie
some_command || exit 1
  • Pierwszy przykład zamyka terminal, przywracając powłoce nadrzędnej kod ostatniego polecenia.
  • Drugi umożliwia przekazanie specyficznego kodu, który inne procesy mogą sprawdzić.
  • Trzeci demonstruje typowy idiom kontroli błędów w skryptach.

  • exit jest wbudowaną komendą; jej zachowanie zależy od bieżącej powłoki, a nie od zewnętrznego pliku binarnego.
  • W subshellu (np. $(...) lub ( … )) polecenie kończy jedynie subshell, nie nadrzędną powłokę.
  • W powłokach interaktywnych można również użyć Ctrl+D (EOF), co równoważne jest exit.
  • Dla wartości n większych niż 255 zwracany kod to n mod 256.

Błąd / KomunikatPrzyczynaRozwiązanie
exit: too many argumentsPodano więcej niż jeden argumentPodaj maksymalnie jeden argument numeryczny
exit: numeric argument requiredArgument nie jest liczbą całkowitąUpewnij się, że n jest liczbą 0–255
Skrypt kończy się nieoczekiwanieset -e + polecenie zwróciło ≠0Dodaj obsługę błędów lub użyj `true`