crontabの"-i"オプションで"-r"のうっかりミスを防止する

今、お風呂からあがって、TwitterのTLを見てたら「crontab -e は「絶対に」使ってはいけない - ろば電子が詰まつてゐる」のエントリを読んで、その勢いで書く。

crontabコマンドにはrオプション(Remove)があり、これを実行すると何の警告もなく全てが消え失せる。

crontab -e は「絶対に」使ってはいけない - ろば電子が詰まつてゐる

確かに、(僕も含めて) 誰もが一度くらいは怖い/ドキドキするような思いをするのかもしれないですが、crontabコマンドには"-i"オプションという、削除時に確認のプロンプトを出してくれるオプションが存在します。
つまり、aliasでこのオプションをつけておけば良いわけですな。

$ crontab -e
crontab: installing new crontab
$ crontab -r
$ crontab -l
no crontab for nami

何もしてないと、上のように"-e"オプションで編集・保存をした後に、うっかり"-r"オプションをつけちゃうと、設定したcronが消えてしまう・・・!

$ alias crontab="crontab -i"
$ crontab -e
crontab: installing new crontab
$ crontab -r
crontab: really delete nami's crontab? (y/n) 

そこで、profileなどで「alias crontab="crontab -i"」な感じで定義しておけば、↑のように"-r"オプションをつけても、一応消して良いかの確認プロンプトが出ます。
manにも↓のように記載がありますね。

The -i option modifies the -r option to prompt the user for a 'y/Y' response before actually removing the crontab.


もちろんバックアップ等は別途必要なわけですが、↑のaliasを入れておいても悪くないと思いまする。

※ 一応、マジレスしておくと、うちはcrontabの設定は全て"Chef"で管理/流している。

それでは!=͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́