Answers:
vi编辑缓冲区的默认目录(/ var / tmp)需要的空间大约等于正在使用的文件大小的两倍,因为vi使用多余的行来进行缓冲区操作。
如果/ var / tmp目录没有足够的空间用于编辑缓冲区(例如,您正在使用大文件,或者系统空间不足)
有时您可能会收到,您还将收到以下类似的错误消息
Not enough space in /var/tmp.
您可以在此处阅读有关如何解决此问题的信息:http : //kb.iu.edu/data/akqv.html
Vim不是为大文件而设计的。它具有某些功能,会大大减慢用户体验。例如,它将文件加载到内存中,这基本上限制了编辑小于您的内存大小的文件。此外,语法高亮,交换文件和撤消等功能对于大型文件而言效率很低,甚至会使速度变慢。另一个问题是vim
期望的行数不会太长。如果文件包含很少的换行符,则该字符vim
将变得不可用。
话虽这么说,有些插件像vim-largefile可以更改特定设置,以便对大文件更有效,但是最后vim
将永远是活泼的,当你在它扔几个GIBS。
最重要的是,不要vim
在大文件上使用。如果要查看(与编辑相比)大文件,请使用less
。如果要搜索模式,请使用斜线开始搜索模式:
/<pattern> # forward search
?<pattern> # backward search
如果要过滤输出,请使用“&”号:
&<pattern>
然后使用开始连续输出shift-f。您可以使用退出连续输出显示,ctrl-c并优化或取消过滤器图案或开始搜索。
要编辑大型文件,请使用诸如之类的工具sed
,这些工具非常有效,并且为此目的而设计。
vi
(或vim
就此而言)在大型文件上实在太慢了,如果行尾没有很多,甚至可能无法使用。此外,文件需要适合内存。使用less
大文件,它的速度更快,往往足以读/看日志文件。