16.04:crontab -e编辑器设置/ vim中的Python语法高亮显示
crontab -e
默认使用vi
进行编辑。
这通常不是问题。 vi
是一个优秀的编辑器,易于学习。
最近我开始使用安装的vim
sudo apt-get update sudo apt-get install vim
并且为了使它在按Tab键时显示行号并默认为适当数量的空格,以及Python开发的语法高亮显示,
我的/home/username/.vimrc
文件的内容如下:
syntax enable set number set ts=4 set autoindent set expandtab set shiftwidth=4 set cursorline set showmatch let python_highlight_all = 1
这很好。
但是,当我使用crontab -e
它会给出以下错误消息:
抱歉,此版本中没有该命令:syntax enable
抱歉,此版本中的命令不可用:let python_highlight_all = 1
按ENTER或键入命令继续
然后按Enter键允许它继续进入vi
以编辑cron表。
问题:它试图使用什么版本的vi? 有没有办法将它设置为正常的vim? 或者将其设置为另一个编辑器?
crontab -e
默认使用vi
进行编辑。
并不是的。 按man crontab
:
-e
选项用于使用VISUAL
或EDITOR
环境变量指定的编辑器编辑当前的crontab。 退出编辑器后,将自动安装修改过的crontab。 如果未定义任何环境变量,则使用默认编辑器/usr/bin/editor
。
/usr/bin/editor
是由替代系统管理的符号链接:它指向/etc/alternatives/editor
,它本身是实际编辑器的符号链接。 它实际上没有“默认”值,因为它的值随时取决于实际安装在系统上的编辑器。 您可以使用ls -l /etc/alternatives/editor
获取其当前值,并使用sudo update-alternatives --config editor
对其进行修改。
使用env
命令检查环境时
env
没有指定默认的EDITOR。
不想浪费时间试图找出它试图使用的vi
版本,简单地解决问题似乎更好。
因此,解决方案很简单。
export EDITOR=gedit
或者,它可以设置为您喜欢的编辑器,如下所示:
export EDITOR=nano
要么
export EDITOR=leafpad
一旦在环境中指定了EDITOR, crontab -e
使用它。
简短又甜蜜。
要使此更改在登录时生效,此行可以附加到/home/username/.bashrc
。