Crontab -e 命令无法正常工作

Crontab -e 命令无法正常工作

第一次运行时,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/$USERroot

如果存在,则使用以下命令之一删除该文件:

  • 对于root用户: rm /root/.selected_editor
  • 对于非root用户: rm /home/$USER/.selected_editor

相关内容