9
  • I am Vim fan for most of my editing purposes.
  • But these days when I have to open huge file ~1-2 gigs, its is vert slow to load and perform operations
  • What are the other ways I can edit such huge files efficiently
  • 2
    Turn off syntax can make vim run a little faster. – ajreal Dec 2 '11 at 18:10
  • In my experience loading a big file like that takes some time, but once it is loaded Vim is actually pretty fast. – Brian Rasmussen Dec 2 '11 at 18:15
  • You can always use sed. – user49531 Dec 2 '11 at 18:43
  • 1
    Duplicate of stackoverflow.com/questions/159521/… – MetaEd Dec 2 '11 at 18:54
6

vim you can

:set binary

first.

or use hexedit. as https://stackoverflow.com/questions/699785/edit-very-large-sql-dump-text-file-on-linux

3

Set

:syntax off
:se binary nospell 
:setgl noswap
:set undolevel=0
:set undofile=

You can also use directory/undodir to put swapfiles and undofiles in another location

2

Look here: https://askubuntu.com/questions/28847/text-editor-to-open-4-3-gb-plain-text-file

  • Divide the file in parts : split -b 53750k <your-file>
  • Edit sigle parts with vim ( I don't like it but it works fast here )
  • Merge the parts cat xa* > <your-file>

Done :)

Sorry but free editor larks good support for big files ( cannot find a reason for that )

p.s.
learn Vim is not so difficult: http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/

  • I had to change the merge command a little bit since I had such a large file that after xaz came xba so xa* would have left out the ones starting with xb. I didn't have any other files starting with x in the same directory so I just used x*. Just in case someone runs into any issues using these commands. – Cvuorinen Aug 7 '13 at 7:29
1

This article explains what you can do to Vim itself to reduce the overhead associated with opening a large file.

0

See my answer here (not vim specific).

What kind of huge file do you want to edit?

  • text file, is that you want to know? – daydreamer Dec 2 '11 at 18:17
  • No, more precisely: a log file, a mysql dump, a big generated assembly code, ...? – Basile Starynkevitch Dec 2 '11 at 18:18
  • a log file is that – daydreamer Dec 2 '11 at 18:18
  • Then my answer applies very well: just csplit your log file into manageable pieces, edit them with your favorite editor, and rebuild the log file. Or develop your own editing scripts (perhaps with sed)... – Basile Starynkevitch Dec 2 '11 at 18:21
0

Try joe. I just used it to edit a ~5G SQL dump file. It took about a minute to open the file and a few minutes to save it, with very little use of swap (on a system with 4G RAM).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.