Як відключити, наприклад, конкретну команду crontab -r?
У мене два рази траплялося, що я випадково запускаю це, бо мій Eключ знаходиться поруч із Rключем. Цього маленького друку достатньо, і ваш кронтаб пропав.
Як відключити, наприклад, конкретну команду crontab -r?
У мене два рази траплялося, що я випадково запускаю це, бо мій Eключ знаходиться поруч із Rключем. Цього маленького друку достатньо, і ваш кронтаб пропав.
Відповіді:
Використовуйте обгортку навколо 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