How to edit multi-gigabyte text files? Vim doesn&#

2020-01-27 09:48发布

Are there any editors that can edit multi-gigabyte text files, perhaps by only loading small portions into memory at once? It doesn't seem like Vim can handle it =(

15条回答
相关推荐>>
2楼-- · 2020-01-27 10:19

I have used TextPad for large log files it doesn't have an upper limit.

查看更多
再贱就再见
3楼-- · 2020-01-27 10:22

Wow, never managed to get vim to choke, even with a GB or two. I've heard that UltraEdit (on Windows) and BBEdit (on Macs) are even more suitable for even-larger files, but I have no personal experience.

查看更多
Melony?
4楼-- · 2020-01-27 10:22

In the past I've successfully used a split/edit/join approach when files get very large. For this to work you have to know about where the to-be-edited text is, in the original file.

查看更多
一夜七次
5楼-- · 2020-01-27 10:30

I've used FAR Commander's built-in editor/viewer for super-large log files.

查看更多
做自己的国王
6楼-- · 2020-01-27 10:31

Ctrl-C will stop file load. If the file is small enough you may have been lucky to have loaded all the contents and just killed any post load steps. Verify that the whole file has been loaded when using this tip.

Vim can handle large files pretty well. I just edited a 3.4GB file, deleting lines, etc. Three things to keep in mind:

  1. Press Ctrl-C: Vim tries to read in the whole file initially, to do things like syntax highlighting and number of lines in file, etc. Ctrl-C will cancel this enumeration (and the syntax highlighting), and it will only load what's needed to display on your screen.
  2. Readonly: Vim will likely start read-only when the file is too big for it to make a . file copy to perform the edits on. I had to w! to save the file, and that's when it took the most time.
  3. Go to line: Typing :115355 will take you directly to line 115355, which is much faster going in those large files. Vim seems to start scanning from the beginning every time it loads a buffer of lines, and holding down Ctrl-F to scan through the file seems to get really slow near the end of it.

Note - If your Vim instance is in readonly because you hit Ctrl-C, it is possible that Vim did not load the entire file into the buffer. If that happens, saving it will only save what is in the buffer, not the entire file. You might quickly check with a G to skip to the end to make sure all the lines in your file are there.

查看更多
smile是对你的礼貌
7楼-- · 2020-01-27 10:32

Personally, I like UltraEdit. Here is their little spiel on large files.

查看更多
登录 后发表回答