第一次运行时,crontab -e
它要求我选择文本编辑器。但是我取消了命令。当我再次运行它时,这是输出:
$ crontab -e
no crontab for root - using an empty one
888
我该如何重置它?我该如何让它再次要求我输入文本编辑器?
我重新安装了(apt-get remove cron && apt-get update && apt-get install cron
)cron,但问题仍然存在。
答案1
有两种方法可以解决这种情况,一种是使用系统命令,另一种是手动方法。
选择编辑器命令
使用命令:
select-editor
这将使您再次尝试使用基于数字的系统来选择默认文本编辑器。
手动方法:
如果尚不存在,请.selected_editor
为用户创建该文件。该文件应位于用户的主目录中。
内容取决于你喜欢的编辑器,为了简单起见,我建议使用nano
。要使用nano
该文件,应该包含以下行:
SELECTED_EDITOR=/bin/nano
要使用稍微复杂/功能丰富的编辑器vim
,请使用:
SELECTED_EDITOR=/usr/bin/vim
指定首选编辑器后,cron
使用以下命令重新加载服务:
service cron reload
此时,您的用户crontab -e
命令应该可以按照预期与所选的编辑器一起工作。
注意:这是重新启动服务的 upstart 方法,在 14.04 上仍然有效,但systemctl
对于 16.04,建议使用 systemd 方法
答案2
如果您以 身份登录,则检查 是否.selected_editor
存在于 目录中;如果您未以 身份登录,则检查 是否存在于 目录中。/root/
root
/home/$USER
root
如果存在,则使用以下命令之一删除该文件:
- 对于
root
用户:rm /root/.selected_editor
- 对于非
root
用户:rm /home/$USER/.selected_editor