解决Debian 8错误:/usr/bin/vim.tiny: not found

在Debian 8里管理crontab任务的时候,比较喜欢vim,但是一台服务器频繁提示错误,网上查找的所有方案都无效,通过自己分析最后发现问题出在 ~/.selected_editor 这个文件里。

问题概述

crontab -e
/usr/bin/sensible-editor: 25: /usr/bin/sensible-editor: /usr/bin/vim.tiny: not found
No modification made

解决方案一

update-alternatives --config editor
无效,问题依旧
参考资料:http://www.shellperson.net/change-sensible-editor/

解决方案二

type vim
hash vim

无效,问题依旧
参考资料:https://www.turnkeylinux.org/forum/support/20140108/solved-bash-command-not-found-after-replacing-package

自行探索解决方案

从提示信息看出错是在 /usr/bin/sensible-editor 文件的25行,打开后看到25行上面17行有如下代码:
if [ -r ~/.selected_editor ]; then
打开 ~/.selected_editor 文件,赫然发现 /usr/bin/vim.tiny 字样,赶紧修改为 /usr/bin/vim ,问题至此解决。

事后思考

对比了一下,发现使用 crontab -e 命令里的默认编辑器设置优先级最高的就是 ~/.selected_editor 中的设置, 用 update-alternatives –config editor 命令进行设置的编辑器无效/优先级较低,导致问题不断复现而不能解决

发表回复

您的电子邮箱地址不会被公开。