如何在 CentOS7 中更改 crontab 的默认编辑器?

How to change default editor for crontab in CentOS7?

我想为 crontab 更改我 CentOS 7 机器上的默认编辑器,因为它目前启动 vi,我更喜欢 nano。

我在网上阅读了很多建议使用 运行ning export EDITOR='nano' 或类似内容的页面 - 有些地方似乎建议使用双引号 ("),而其他地方则根本没有引号.

无论如何,none 这些方法都有效,我 运行 export 命令,然后 sudo crontab -e 仍然启动 vi!我做错了什么?

我意识到如果我想让更改在会话之间持续存在,我需要将此 export 命令放入我的 bashrcbash_profile 文件中,或者创建一个 .sh 文件在 /etc/profile.d/ 中,但我只是想让它先独立工作,然后再让它持久化 - 有人能帮忙吗?

导出工作如您所见,但如果您使用 sudo,您将 运行 crontab 作为其他用户,在本例中为 root,那么您也需要将 EDITOR 设置为 root。

(我post作为答案,因为我无法发表评论)

您可以将 -E 与 sudo 一起使用

-E' The -E (preserve environment) option indicates to the security policy that the user wishes to preserve their existing environment variables. The security policy may return an error if the -E option is specified and the user does not have permission to preserve the environment.

export EDITOR=nano
sudo -E crontab -e