小智 1
假设你要编辑rootcrontab,sudo必须给你root权限。执行此操作后,crontab将调用${VISUAL:-${EDITOR:-vi}}($VISUAL除非它不存在,否则它将使用;在这种情况下,$EDITOR除非它不存在,否则它将使用;在这种情况下,它将使用vi)。
您有几种可能的解决方案。它们都破坏了 提供的安全性sudo,但您必须已经意识到这些问题(并愿意保护您的),否则您一开始.vimrc就不会使用。sudoedit
最好的方法可能是HOME在sudo命令行上添加对变量的赋值,因此crontab认为 HOME 目录是不同的:
sudo HOME=$HOME crontab -e
Run Code Online (Sandbox Code Playgroud)
(如果您的主目录路径中有空格,该命令将不起作用!)