Polecenie trap
w C Shell (csh) służy do przechwytywania sygnałów i błędów, co pozwala na wykonanie określonych działań w odpowiedzi na te sygnały. Dzięki temu użytkownicy mogą zdefiniować, co powinno się stać, gdy proces otrzyma określony sygnał, co jest szczególnie przydatne w skryptach.
Podstawowa składnia polecenia trap
jest następująca:
trap [akcja] [sygnał]
SIGINT
: Sygnał przerwania, zwykle wysyłany przez Ctrl+C.SIGTERM
: Sygnał zakończenia, używany do żądania zakończenia procesu.EXIT
: Akcja, która ma być wykonana przy wyjściu ze skryptu.Aby wykonać określoną akcję po naciśnięciu Ctrl+C:
trap 'echo "Proces przerwany"; exit' SIGINT
Aby zdefiniować, co ma się stać, gdy proces otrzyma sygnał zakończenia:
trap 'echo "Otrzymano sygnał zakończenia"; exit' SIGTERM
Aby wykonać akcję przy zakończeniu skryptu:
trap 'echo "Zamykam skrypt"; exit' EXIT
trap
, aby upewnić się, że przechwytywanie sygnałów działa zgodnie z oczekiwaniami.trap
w skryptach, które mogą być przerwane, aby zapewnić czyszczenie zasobów lub zapisanie stanu.trap
, aby nie skomplikować logiki skryptu.