当前位置: 首页>>技术问答>>正文


文本编辑器编辑大(4.3 GB)纯文本文件

, ,

问题描述

有没有文本编辑器,可以编辑这样的文件?

我试过了:

  • gedit

  • kate

  • nano

  • vim

  • mcedit

没有成功。

最佳解决思路

另一种方法是使用split。将文件拆分为8个,并使用编辑器操作文件。之后,再次重新组合文件。

split -b 53750k <your-file>

cat xa* > <your-file>


SYNOPSIS
       split [OPTION]... [INPUT [PREFIX]]

-a, --suffix-length=N
              use suffixes of length N (default 2)

       -b, --bytes=SIZE
              put SIZE bytes per output file

       -C, --line-bytes=SIZE
              put at most SIZE bytes of lines per output file

       -d, --numeric-suffixes
              use numeric suffixes instead of alphabetic

       -l, --lines=NUMBER
              put NUMBER lines per output file

次佳解决思路

试试joe。我只是用它来编辑~5G SQL转储文件。打开文件大约需要一分钟,保存几分钟,很少使用swap(在具有4G RAM的系统上)。

第三种解决思路

你找不到他们。如果要替换此文件中的某些行,可以使用less或grep查看并使用sed来搜索和替换某些行。

像这样:

sed -e 's/oldstuff/newstuff/g' inputFileName > outputFileName

维基百科上有一些有用的例子:http://en.wikipedia.org/wiki/Sed

第四种思路

如果你愿意,可以试一试,但如果你想做”normal”编辑,那么这些大文件就变得不切实际了;例如,你不想经常保存你的编辑;这将花费太长时间:)

如果它是一次性的,splitjoin可以很好地工作,它很简单,可以将它切成可管理的块,然后重新加入碎片……请注意,许多编辑将添加一个换行符到最后您编辑的文件,并在不通知您的情况下执行此操作!有关详细信息,请参阅How to stop Gedit, Gvim, Vim, Nano from adding End-of-File newline char?

如果你真的想编辑这么大的文件,试试Gvim ….我刚刚加载了一个3.9GB的文件,一切似乎都很正常……

这是关于此事的有趣链接,在stackoverflow

第五种思路

使用glogg – 快速,智能的日志浏览器:http://glogg.bonnefon.org/

第六种思路

还有另一种非常简单快速的方法来替换非常大的文件中的内容(而不是编辑大型mysql转储)

首先你应该安装midnight comander – linux系统的优秀文件管理器

sudo apt-get install mc

之后,您可以在”view mode”中打开任何大小的文件(使用F3快捷方式),切换到HEX视图(F4快捷方式)并激活编辑模式(F2快捷方式)。

例如,我有3 GB的mysql转储,我想删除一些SQL行。我打开视图模式,查找字符串,打开十六进制模式并在需要行之前用MYSQL注释替换内容(字符串“ – ”,十六进制代码2D 2D 20)。

例:

files,text-editor,ubuntu

第七种思路

根据tuxdiary

HTH

第八种思路

010 Editor非常适合我,工作速度非常快。

第九种思路

根据这篇维基百科文章Comparison of text editors VIM等。我打算建议Geany,但有一个?在大型文件支持领域……

编辑:我继续和geany一起尝试并且在等待10分钟后放弃了3个核心并且基本上我的所有 memory (虚拟和物理)都在使用整个时间……没有决定因为它可能设法打开它如果我我更耐心了。我查找并没有找到任何设置/首选项来处理大文件也不同。

我最喜欢fred.bear的答案。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1219.html,未经允许,请勿转载。