Например, как отключить определенную команду crontab -r
?
Со мной уже дважды случалось, что я случайно запускаю это, потому что мой Eключ находится рядом с Rключом. Этой маленькой опечатки достаточно, и ваш crontab ушел.
Например, как отключить определенную команду crontab -r
?
Со мной уже дважды случалось, что я случайно запускаю это, потому что мой Eключ находится рядом с Rключом. Этой маленькой опечатки достаточно, и ваш crontab ушел.
Ответы:
Используйте обертку вокруг crontab
команды, например, эта функция будет делать:
crontab () { [[ $@ =~ -[iel]*r ]] && echo '"r" not allowed' || command crontab "$@" ;}
Эта функция проверяет, -r
существует ли в аргументе crontab
; если это так, завершается с сообщением "r" not allowed
, в противном случае выполняет команду.
Вставьте его в свой, ~/.bashrc
чтобы загрузить его при инициализации всех интерактивных bash
сеансов.
Я предлагаю вам включить
alias crontab="crontab -i"
в вашем ~/.bashrc
файле (запустите новую оболочку перед тестированием!)
Это означает, что каждый раз, когда вы запускаете crontab, вы всегда выбираете опцию «-i». Если вы сейчас дадите crontab -r
команду, она обрабатывается по адресу crontab -ir
, который запрашивает перед удалением файла crontab:
nick@serv2:~$ crontab -r
crontab: really delete nick's crontab? (y/n) n