Piszę skrypt, który automatyzujeinstalacja ffmpeg na naszych serwerach. Jak na razie działa. Aby skrypt był bardziej przyjazny dla użytkownika, chciałbym przedstawić coś w skrypcie, który przechwytuje zakończenie instalacji za pomocą Ctrl + C lub Ctrl + Z itp. I daje wyjście typu „Zakończenie na żądanie użytkownika” lub coś tego rodzaju. Rzecz w tym, że nie wiem, czy możliwe jest przechwycenie tych znaków za pomocą skryptu. tutaj i chciałbym wiedzieć, czy jest to właściwy sposób. Jeśli tak, to czy istnieje control_c () i czy jest odpowiednik control_z ()?
wszelka pomoc jest doceniana. Z góry dziękuję
Odpowiedzi:
2 dla odpowiedzi № 1tak, używając trap
jest drogą do zrobienia
control_c()
# run if user hits control-c
{
echo -en "n*** Ouch! Exiting ***n"
cleanup
exit $?
}
# trap keyboard interrupt (control-c)
trap control_c SIGINT
i wychwycić sygnał wysłany z Kontrola-Z klucz, musisz złapać pułapkę SIGTSTP
sygnał:
control_z()
{
echo -e "n*** Suspending asked... Exiting! ***"
cleanup
exit $?
}
trap control_z SIGTSTP