我有几GB的服务器日志文件(在Ubuntu上)。当我尝试打开它们时,在文件加载到Vim时,终端会锁定一分钟左右。有没有一种减少时间的方法,例如通过设置Vim来按需加载文件,或通过其他方法?

评论

为什么不少使用?

您打算以任何方式操作文件,还是只想查看它们?

我想编辑文件。

相关:stackoverflow.com/a/19795855/732016

很可能我将永远被禁止访问该网站,但我不得不说:当涉及到巨大的文件时,Emacs就是这项工作的工具。 :-)

#1 楼

首先,尝试在没有插件或vimrc的情况下加载vim:

vim -u NONE gargantuan.txt


如果这要快得多,那么您可能会突出显示语法,折叠,插件或进行其他操作
尝试关闭vimrc中的内容(并禁用插件),直到找到罪魁祸首。

还请确保分别执行set ft= syn=syntax off

如果这没有帮助,则可能是因为您的行太长导致了问题。
请尝试set nowrap关闭换行。

评论


vim -U NONE -N gargantuan.txt将在以“ vi iMproved”模式运行的nocompatible运行vim时执行相同的操作,而不是尝试与旧的“ vi”兼容

–RubenLaguna
17年5月11日在8:37

#2 楼

Vim是错误的工具:您应该使用moreless这样的传呼机。如果您坚持使用编辑器,请尝试改编自Vim Wiki的以下示例: />
augroup LargeFile
        let g:large_file = 10485760 " 10MB

        " Set options:
        "   eventignore+=FileType (no syntax highlighting etc
        "   assumes FileType always on)
        "   noswapfile (save copy of file)
        "   bufhidden=unload (save memory when other file is viewed)
        "   buftype=nowritefile (is read-only)
        "   undolevels=-1 (no undo possible)
        au BufReadPre *
                \ let f=expand("<afile>") |
                \ if getfsize(f) > g:large_file |
                        \ set eventignore+=FileType |
                        \ setlocal noswapfile bufhidden=unload buftype=nowrite undolevels=-1 |
                \ else |
                        \ set eventignore-=FileType |
                \ endif
augroup END


评论


可以更少或更多地更改我的文件吗?

–马丁·图尔诺伊(Martin Tournoij)
2015年2月3日在21:50

他们当然不能。日志不打算被编辑。

– romainl
2015年2月3日在21:59

sed是为此目的而发明的。您确定要进行哪些更改(表示为替代),然后运行sed进行更改。这也适用于流(即,由于正在产生的文件内容没有止境)。

– reinierpost
2015年6月1日8:30



我对vimpager的别名越来越少,越来越多。 github.com/rkitover/vimpager

– Alex Kroll
2015年6月6日在8:16

#3 楼

LargeFile.vim插件旨在使更快地编辑大型文件。请参见http://www.drchip.org/astronaut/vim/index.html#LARGEFILE。

从页面:


可以更快地编辑大文件(默认值:100MB +为“大”),但要以关闭事件,撤消,语法突出显示等为代价。也可以在vim.sf.net上对其进行排名。 br />根据手册,该插件仅在安装后即可工作。您可以通过将g:LargeFile更改为整数MB来设置截止值,该整数表示默认为20MB(与项目描述为100相比)

该插件还提供了:UnLarge:Large:Large!分别在当前加载的文件上禁用,重新启用或强制启用(对于小文件)。

#4 楼

我听说关闭语法高亮显示会有所帮助:

:syntax off


评论


启用任何种类的折叠功能也会产生巨大的影响

– Craigp
2015年2月4日在7:38

#5 楼

您可能想尝试的另一个传呼机是most
http://www.jedsoft.org/most/

此外,请旋转日志,因为这可能会导致较小的日志。