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ół crontab
polecenia, na przykład ta funkcja wykona:
crontab () { [[ $@ =~ -[iel]*r ]] && echo '"r" not allowed' || command crontab "$@" ;}
Ta funkcja sprawdza, czy -r
istnieje w argumencie crontab
; jeśli tak, kończy działanie z komunikatem "r" not allowed
, w przeciwnym razie wykonuje polecenie.
Umieść go w swoim, ~/.bashrc
aby załadować go po zainicjowaniu wszystkich interaktywnych bash
sesji.
Sugeruję uwzględnienie
alias crontab="crontab -i"
w twoim ~/.bashrc
pliku (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 -r
polecenie, 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