我精通使用 Unix/Linux,但不是专家。如果我想打开一个文件(例如,file.txt
),我使用vi
:
vi file.txt
这将打开文件,如果我想关闭它,我使用:q!
.我使用Unix/Linux的两年里一直在使用这个方法。我的机构有一个运行 Ubuntu Linux 的集群。
然而今天,我尝试打开一个文件,却收到以下错误消息:
E576: viminfo: Missing '>' in line: newest to oldest):
E576: viminfo: Missing '>' in line: ?/CJ
E576: viminfo: Missing '>' in line: ?/CG
E576: viminfo: Missing '>' in line: ?/CC
E576: viminfo: Missing '>' in line: ?/OEP
E576: viminfo: Missing '>' in line: ?/CEP
E576: viminfo: Missing '>' in line: ?/dih
E576: viminfo: Missing '>' in line: ?/ang
E576: viminfo: Missing '>' in line: ??b
E576: viminfo: Missing '>' in line: ?/xvg
E136: viminfo: Too many errors, skipping rest of file
Press ENTER or type command to continue
所以我按Enter.我收到同样的消息:
E576: viminfo: Missing '>' in line: newest to oldest):
E576: viminfo: Missing '>' in line: ?/CJ
E576: viminfo: Missing '>' in line: ?/CG
E576: viminfo: Missing '>' in line: ?/CC
E576: viminfo: Missing '>' in line: ?/OEP
E576: viminfo: Missing '>' in line: ?/CEP
E576: viminfo: Missing '>' in line: ?/dih
E576: viminfo: Missing '>' in line: ?/ang
E576: viminfo: Missing '>' in line: ??b
E576: viminfo: Missing '>' in line: ?/xvg
E136: viminfo: Too many errors, skipping rest of file
Press ENTER or type command to continue
我再次按Enter,最后文件打开以供阅读/编辑。但是,当我尝试使用 关闭文件:q!
以及尝试使用vi
.打开任何其他文件时,问题会重复出现。
关键词CJ
、CG
、CC
、OEP
、CEP
、和(虽然我不确定)都是我使用 读取的文件中经常出现的字符串dih
,尽管我不确定它们是否都存在于我打开的特定文件中(我不这么认为)。因此,也许我的文件有问题?但是,我ang
xvg
b
vi
viminfo
是使用vi
,不是 vim
。
我不确定发生了什么;您对我如何诊断并可能解决这个问题有什么建议吗?
答案1
做这个:
rm -f ~/.viminfo
该.viminfo
文件保存有关各种有用但非关键状态信息的元数据。你的已经腐败了。去掉它。
答案2
.viminfo
当您存储命令和文件历史记录等的文件中存在语法错误时,会发生 vim 错误 E576。
当空间不足或存储引擎出现故障时,可能会发生损坏。您可以尝试编辑~/.viminfo
、找到并删除无效行,最终将其重命名为不同的名称,然后将其删除。
您还可以使用-i {viminfo}
参数来指定不同的 .viminfo 文件。