我以非 root 用户身份使用 Linux Centos 7。当我想添加不可能的 cron 作业时,我输入
crontab -e
我没有选择编辑器或添加 cron 作业的选项,只有蓝色 ~ 标志?
另外命令选择编辑器也不存在。
有什么帮助吗?我应该怎么办?
截图:
答案1
那是 VIM(或者可能是另一个vi
克隆)。您正在使用文本编辑器。要添加 cron 作业,只需使用该编辑器进行编辑。
您不需要,select-editor
因为它是 Debian 上“sensible-utils”软件包的一部分。 (以前它是“debianutils”软件包的一部分,该软件包显然是特定于 Debian 的。)该软件包位于 EPEL 中,而不是 CentOS 中。
RedHat从Debian中采用的就是“替代”系统。它控制editor
命令映射到的内容。
有几种可能:
- 您的
VISUAL
环境变量指向vim
(或vi
)。 - 您的
VISUAL
环境变量指向editor
,当前选择的替代方案editor
是 VIM。 - 您的
VISUAL
环境变量未设置,后备是editor
,当前选择的替代方案editor
是 VIM。 - 您的
VISUAL
环境变量未设置,后备是vim
(或者可能是vi
)。
如果您想使用另一种编辑器,有两种方法可以更改编辑器:
- 更改
VISUAL
环境变量指向的内容。根据您在 shell 中的设置方式,这会更改当前交互式 shell 会话的全屏编辑器,甚至仅更改当前命令(如果您将变量分配为简单命令的前缀)。您当然可以在登录脚本中设置它。 - 取消设置您的
VISUAL
环境变量并更改editor
.editor
请注意,这改变了系统上每个人的含义。它还取决于editor
环境变量未设置时的后备假设。这是在 Debian、OpenSUSE 和 Fedora/CentOS/RHEL 等“替代”操作系统上使用的合理后备方案。但是后备逻辑当然是在许多单独的命令和脚本中编码的,并不是每个软件作者都选择editor
作为后备。
进一步阅读
- 替代命令和 Centos7
- https://unix.stackexchange.com/a/477769/5132
- 乔纳森·德博因·波拉德 (2020)。Unix 编辑器和寻呼机。常见答案。
答案2
要使用不同的编辑器(例如 nano)进行一次性编辑,请运行:
EDITOR=nano crontab -e
要使 nano 成为您的默认编辑器,请将其添加到您的配置文件中,该配置文件可能是 .bashrc 或其他文件:
export VISUAL="nano"
export EDITOR="nano"
然后使用以下命令重新加载您的个人资料:
source ~/.bashrc