crontab -r
などの特定のコマンドを無効にするにはどうすればよいですか?
私が偶然それを走らせたのはすでに2回起こった E キーは隣にあります R キー。その小さなタイプミスで十分であり、crontabはなくなりました。
crontab
commandのラッパーを使用します。たとえば、この関数は次のようにします。
crontab () { [[ $@ =~ -[iel]*r ]] && echo '"r" not allowed' || command crontab "$@" ;}
この関数は、crontab
の引数に-r
が存在するかどうかを確認します。そうであれば、メッセージ"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