在我敲回车之前,我赶紧在crontab -e
e中忘记了e 。
出现一个提示,所以我用Ctrl + Dclosures,和我通常退出input提示一样。
现在,没有警告,我的整个crontab是空的。
为什么? 什么逻辑导致了这种情况发生? 我应该如何closuresCtrl + D以外的提示,以便保存任何内容?
在这种情况下, Control + C会中止crontab
,不会清除当前的crontab条目。 否则,裸露-
在Unix上的一个常见的迹象是,input应该从标准input读取,而Control + Dclosures标准input,导致空的crontab文件,因为在标准input上没有任何东西被input。
一个用户的crontab条目沿着
@daily crontab -l > $HOME/.cron.`hostname`
可以通过提供crontab数据的备份副本来帮助防止任何此类未来的软件(或者可以使用版本控制,或者想要进行备份的复杂软件)。
你用stdin中的内容replace了你的crontab,这是空的。 它基本上和crontab < /dev/null
相同crontab < /dev/null
。
按Ctrl + C可能是一个更好的习惯。
你的crontab很可能不见了。 备份可以在/var/spool/cron
某个地方,但是我不知道任何维护备份的cron守护进程。 如果对你很重要,你应该设置/var/spool/cron
备份。