3

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

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

无论如何,这些方法都不起作用,我运行export命令,然后sudo crontab -e它仍然启动 vi!我究竟做错了什么?

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

4

2 回答 2

7

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

-E' -E(保留环境)选项向安全策略表明用户希望保留他们现有的环境变量。如果指定了 -E 选项并且用户没有保留环境的权限,则安全策略可能会返回错误。

export EDITOR=nano
sudo -E crontab -e
于 2016-01-14T15:12:00.180 回答
1

导出就像您看到的那样工作,但是如果您使用 sudo,您将以其他用户身份运行 crontab,在本例中为 root,那么您也需要将 EDITOR 设置为 root。

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

于 2016-01-14T15:04:37.230 回答