Linux 如何指定一个编辑器来打开crontab文件&引用;导出编辑器=vi";不起作用
我使用的是Red Hat Enterprise Linux 5,我想设置vim编辑器来编辑crontab文件Linux 如何指定一个编辑器来打开crontab文件&引用;导出编辑器=vi";不起作用,linux,vim,Linux,Vim,我使用的是Red Hat Enterprise Linux 5,我想设置vim编辑器来编辑crontab文件 如果我运行echo$EDITOR,我就会得到vim。但是当我运行crontab-e时,我得到了不同的编辑器。我认为您可能需要使用完整路径: export EDITOR=/usr/bin/vim 引用这位男子的话: -e选项用于使用VISUAL或editor环境变量指定的编辑器编辑当前crontab 通常,如果从X运行crontab-e,则设置了VISUALset;这就是我们所用的。试试
如果我运行
echo$EDITOR
,我就会得到vim。但是当我运行crontab-e
时,我得到了不同的编辑器。我认为您可能需要使用完整路径:
export EDITOR=/usr/bin/vim
引用这位男子的话:
-e选项用于使用VISUAL或editor环境变量指定的编辑器编辑当前crontab
通常,如果从X运行crontab-e
,则设置了VISUAL
set;这就是我们所用的。试试这个:
VISUAL=vi-crontab-e
它刚刚对我起了作用:)很可能您的
VISUAL
环境变量被设置为其他变量。尝试:
export VISUAL=vi
如果上述方法不起作用(因为它们在我的Ubuntu 13.04安装中不起作用),请尝试: 有许多替代方法: 1)运行选择编辑器
select-editor
2)手动编辑文件:~/。选择编辑器
指定首选编辑器。使用此选项,您可以指定编辑器参数。
# Generated by /usr/bin/select-editor
SELECTED_EDITOR="/usr/bin/emacs -nw"
3)您可以使用以下命令行动态指定:
env VISUAL="emacs -nw" crontab -e
这对我不起作用。我使用sudo运行crontab,因此我切换到root,执行了上述建议,crontab将在vim中打开,但它仍然不会从我的用户帐户打开。最后,我从用户帐户运行了
sudo select editor
,这就成功了。export editor=vim
为我工作了您可以使用下面的命令在vim editor中打开它
export VISUAL=vim; crontab -e
注意:请确保您的服务器上安装了VIM editor。这对我来说很有效:
EDITOR="/usr/bin/vim"
export EDITOR
将此项添加到~/.bash_配置文件或~/.bashrc中,以便为当前用户启用此项。陷阱在于首先选中了
VISUAL
。因此,像您这样完美的建议在SSH会话中效果很好,但在桌面机上却神秘地失败了。首先分配,然后导出,这样对我有效:EDITOR=/usr/bin/vi;导出编辑器。在SSH下使用SunOS here.setting变量export-VISUAL=vim
(setenv-VISUAL“vim”
用于tcsh shell)非常有效@lwpro2:如果未设置VISUAL
,则使用编辑器
变量。但是VISUAL
的优先级高于EDITOR
。如果crontab由多个人和一个用户管理,我建议在子shell中执行此操作,因此默认编辑器保持不变。您知道为什么在vi而不是nano中打开文件时会有所不同吗?感谢您的解释,事实上,我是从X运行我的终端。如果您使用sudo运行crontab-e,最好的选择是:)sudo VISUAL=vi crontab-e
第一次打开crontab时,我错误地将默认编辑器设置为nano
。然后我不得不使用sudoselecteditor
让它工作。提示:如果仅selecteditor
不起作用,则不应在个人配置中使用“sudo”。它可能会破坏一些东西,迫使你在正常的计算机使用中保持高位运行。sudo(提升的命令)用于在您的个人区域(~用户区域)之外使用系统范围的功能。如果您必须运行sudo来配置您的用户环境,这意味着您应该解决的问题。您在个人空间上运行了sudo,并失去了对本应属于您的文件的权限。您可以通过运行以下命令来检查您的空间:find~/-mount-用户$(whoami)
。您可以通过运行以下命令来更正此问题:sudo chown-R$(whoami):$(whoami)~/
@L.D.James您是对的,谢谢。事实证明,它只是root拥有的.select_编辑器文件。