Jak na przykład wyłączyć określone polecenie crontab -r?
Zdarzyło mi się już dwa razy, że przypadkowo go uruchomiłem, ponieważ mój Eklucz jest obok Rklucza. Wystarczy ta mała literówka, a twojego crontab już nie ma.
Jak na przykład wyłączyć określone polecenie crontab -r?
Zdarzyło mi się już dwa razy, że przypadkowo go uruchomiłem, ponieważ mój Eklucz jest obok Rklucza. Wystarczy ta mała literówka, a twojego crontab już nie ma.
Odpowiedzi:
Użyj opakowania wokół crontabpolecenia, na przykład ta funkcja wykona:
crontab () { [[ $@ =~ -[iel]*r ]] && echo '"r" not allowed' || command crontab "$@" ;}
Ta funkcja sprawdza, czy -ristnieje w argumencie crontab; jeśli tak, kończy działanie z komunikatem "r" not allowed, w przeciwnym razie wykonuje polecenie.
Umieść go w swoim, ~/.bashrcaby załadować go po zainicjowaniu wszystkich interaktywnych bashsesji.
Sugeruję uwzględnienie
alias crontab="crontab -i"
w twoim ~/.bashrcpliku (uruchom nową powłokę przed testowaniem!)
Oznacza to, że za każdym razem, gdy uruchamiasz crontab, zawsze wybierasz opcję „-i”. Jeśli wydasz teraz crontab -rpolecenie, zostanie ono przetworzone o crontab -ir, co spowoduje wyświetlenie monitu przed usunięciem pliku crontab:
nick@serv2:~$ crontab -r
crontab: really delete nick's crontab? (y/n) n