LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: mperson

超大的纯文本用什么编辑?

[复制链接]
发表于 2009-4-15 08:55:13 | 显示全部楼层
Post by adamz;1974494

来回答你为什么emacs/vi不能很好的读入大文件。Ultraedit读入文件,一般不需要也不能高效编辑,比如快速跳转,全文操作。你能让ultraedit读入一个4G的大文件,然后对它进行一个全文增加缩排量或奇偶行交换么?当然4K的文件他也办不到。所以他可以在读入大文件时,采用部分读入的技术,以加快速度。emacs/vi需要高效编辑,部分读入是不可行的。
对付大文件,一般有两个办法:第一,使用其他工具,比如sed之类;第二,为什么要编辑大文件?我的经验中,超过1G的大文件都不是提供给编辑器来编辑的。何苦要让编辑器做这种事情。


大家讨论了这么久,楼上的终于告诉我们,为什么vi和emacs不能很好的读入大文件,很感谢
想想自己参与了讨论,却连这个问题都没有想过,惭愧啊
回复 支持 反对

使用道具 举报

发表于 2009-4-16 09:22:07 | 显示全部楼层
有人还真想要在Linux下用到免费的山寨高仿软件,真是蛋疼啊……
回复 支持 反对

使用道具 举报

发表于 2009-4-16 10:18:33 | 显示全部楼层
楼主所说的“编辑”有哪些操作呢?
(比如,如果只是简单的查找/替换,那么写个脚本更方便)

另外,UltraEdit 已经推出了LINUX版,见: http://www.ultraedit.com/products/uex.html
回复 支持 反对

使用道具 举报

发表于 2009-4-16 10:40:13 | 显示全部楼层
谢谢上面的同志告诉我Ctrl+V的可视模式!!



我说一下我曾经为什么碰到要编辑器打开超大文件的情况。

曾经拿到一个超大的数据文件,基于此文件要做一些分析,但是程序读入的时候在中间某行(超大的数字)出现错误,程序中断,于是怀疑数据文件个别格式有误,可能
是由于数据生成时候的溢出,产生了***的输出。
当时我想到的最简单的办法就是要编辑器的替换功能把***替换成-99之类的方法、
回复 支持 反对

使用道具 举报

发表于 2009-4-16 11:07:58 | 显示全部楼层
其实vim倒是有几个处理大文件的插件,
不过使用过的感觉都不是很理想,
另外对于楼上的问题,
我觉得sed和awk应该可以做到吧。
shell那个板块就有一些内容,
楼上不妨看看相关的部分。
回复 支持 反对

使用道具 举报

发表于 2009-4-20 12:42:42 | 显示全部楼层
我出来打酱油的。
“服务器只是计算机领域微不足道的一点渣滓”
这点我赞同,因为显卡和鼠标都是属于windows,跟linux一点关系都没有。而单是鼠标和显卡产生的社会产值足以蔑视整个类unix产业。但这全不是类unix的错
回复 支持 反对

使用道具 举报

发表于 2009-4-20 18:24:26 | 显示全部楼层
文件中的替换用sed -i 同样用的。vim中的替换命令用起来和sed的差不多。
但是sed的功能在按行处理文本是非常强大的。要查看格式的错误,用sed
是要快很多。
回复 支持 反对

使用道具 举报

发表于 2009-4-20 18:36:08 | 显示全部楼层
还要上来说一句。Ctrl+C,Ctrl+v。这个问题可以用自定义来解决。
只不过自己的感受,用惯了了vim的默认复制粘贴,实在是觉得
Ctrl+C,Ctrl+v, 不是很方便。
用一个软件不一定,一定要适合windows下的习惯。每个软件
都有自己的快捷键的定义,没有熟悉前,不要片面的批评。
回复 支持 反对

使用道具 举报

发表于 2009-4-25 17:19:20 | 显示全部楼层
学习emacs的新手gooogle到这里,受教不少~~
这牛人真多。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表