我损坏了 vi (E576: viminfo: 行中缺少 '>':) - 如何修复它?

我损坏了 vi (E576: viminfo: 行中缺少 '>':) - 如何修复它?

我对 Debian 非常陌生,并且一直在使用 vi/vim 来强化 sshd_config 下的 SSH 设置。

最近我一直收到一条错误消息:

E576: viminfo: Missing '>' in line:

我已经关注了类似线程的回复为什么 vi 明显损坏(viminfo 错误 E576),我该如何修复它?包括rm -f ~/.viminfo,无济于事。我尝试删除下面的所有内容# History of marks within files (newest to oldest):,但这也不起作用。

我也尝试删除并重新安装vim,但问题仍然存在。我不确定如何.viminfo按照其中一个答复所建议的那样进行行动——在我首先了解出了什么问题之前,我不愿意冒险进一步破坏事情。

奇怪的是,当我打开它时.viminfo,它不会抛出错误,但当我打开时,sshd_configssh_config会抛出错误。我是否可能以某种方式损坏了这些文件?

据我所知vi/vim在 Debian 中是相同的。

任何建议都非常感激。

答案1

有问题的文件位于.viminfo用户的主目录中。重新安装 vim 没有帮助,因为有问题的文件是每个帐户的文件,而不是系统文件。

该文件包含历史信息:例如您上次打开的文件、上次搜索查询等。如果删除它,您将仅从新的历史记录开始。您的自定义设置位于不同的文件 ( .vimrc) 中。

rm -f ~/.viminfo解决您帐户的问题。但是从您描述的症状(编辑时没有问题.viminfo,但编辑ssh_config和时出现问题sshd_config),我推断问题不在您的帐户上,而是在 root 帐户上。你没有崩溃vim,你已经崩溃了sudo vim。 (顺便说一句,这是重要信息:您应该在问题中说明这一点,而不是让我们猜测。)因此您需要删除(或修复).viminfo管理员 ( root) 帐户中的文件:

sudo rm /root/.viminfo

相关内容