大家在linux下打开过10G的大文件进行编辑吗?

2013-05-22 11:09:28 +08:00
 yaotian
如果你用vim的话,就很悲剧。

收集一下你们的做法。
13131 次点击
所在节点    程序员
19 条回复
cloudzhou
2013-05-22 11:14:41 +08:00
你是真的需要编辑呢?(大部分都是不需要的)
还是只是为了查看相关内容
一般 sed 和 grep 能解决大部分的需求
molinxx
2013-05-22 11:16:10 +08:00
10G还真没试过,1G左右的经常~VIM还好,要等20秒左右加载完成,opensuse系统1230V2的U
molinxx
2013-05-22 11:18:02 +08:00
只查看还是用less,编辑还是sed awk吧~
hadoop
2013-05-22 11:50:12 +08:00
@molinxx vim这种必须在文件打开时一次性load进来,完全可以只load一部分,剩下的都用户定位到那里再load。而且我猜测vim内部是不是组织文件内容时需要额外的内存消耗,打开1g文件一般vim占用内存一般要大于1g
cassyfar
2013-05-22 11:57:10 +08:00
我也在想这个问题
lululau
2013-05-22 12:06:15 +08:00
有一种特例,可以用dd来完成,速度很快,例如,如果要将 bigfile 中的第 m 个字节到第 n 个字节(从1开始)替换成字符串 x, 且x的长度为 (m-n+1),那么可以用命令 dd 来完成编辑:

echo -n x | dd of=bigfile seek=$((m-1)) bs=1 count=$((m-n+1)) conv=notrunc
molinxx
2013-05-22 12:19:06 +08:00
@hadoop 1G左右的话只有刚加载的时候会占用些内存,打开之后就没那么多了~
RisingV
2013-05-22 12:45:45 +08:00
我的第一反映是,windows直接趴下
slimbloody
2013-05-22 15:17:41 +08:00
很想知道你为什么要编辑一个10G的文件?这个文件的作用和类型是什么
reusFork
2013-05-22 16:21:54 +08:00
sed啊…
yaotian
2013-05-22 21:28:57 +08:00
clino
2013-05-22 21:31:16 +08:00
hexedit 这个也算编辑吧? 嘿嘿
VYSE
2013-05-22 21:38:13 +08:00
多数Editor会预载到内存,HEX EDITOR更适合一些。推荐wxHexEditor,追赶WINHEX的LINUX下HEX编辑器
vking
2013-05-22 23:24:45 +08:00
@RisingV notepad++(或其他類似編輯器)的异步加载比你想象中的猛.
ForgotFun
2013-05-23 00:24:28 +08:00
32位系统上肯定是打不开10G的文件的,因为默认系统调用open不支持大于4G文件,除非用open64或者BIG_FIRLE 参数.
xdeng
2013-05-23 01:16:52 +08:00
@RisingV 你out了。ue就能打开。亲测
williamx
2013-05-23 09:13:32 +08:00
说说看是什么类型的文件,让我长长见识啊!
tuoxie007
2013-05-23 09:38:29 +08:00
我也就用more看看log,随便就好多个G
butfly
2015-10-03 03:26:24 +08:00
楼上都太孤陋寡闻了。编辑过 svnadmin dump 出来的 10G 的文件么?没办法…… load 的时候报错……

PS , windows 下新点的编辑器都没问题的。当然还在用 x86 的就不说了。

听说 joe 可以部分加载。 1G 文件只占 50M 内存。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/69755

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX