24小时热门版块排行榜    

查看: 3129  |  回复: 10

tiandui

新虫 (初入文坛)

[求助] 怎么样快速删除一个大文件的前N行?

如题,有个大文件,格式很整齐,想删掉前N行,N已知
用一般的文本编辑太慢,用c代码的话目前只会用fseek,fscanf,fprintf,但这样依然不够快,想请问有没有办法可以直接删掉N行,而不需要读取剩下的内容并转存?
谢谢大家
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

tiandui

新虫 (初入文坛)

引用回帖:
: Originally posted by lurencyj at 2012-02-27 16:10:48:
在linux 下,删除文件file中的第1到第N行:
CODE:
sed -i    '1,N d'    file

PS: 上面是对原文件file做删除操作。
CODE:
sed   '1,N d'    file  > newfile

PS: 上面是保持 ...

谢谢,试了下,大约速度是我自己写的代码的三倍
7楼2012-02-27 18:50:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

burellow

新虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
余泽成(金币+1): 谢谢参与应助!欢迎常来程序语言版! 2012-02-28 09:41:10
试试ultraedit。
P.S. WORD打开大文档也需要一定的时间,所以如果文件特别大,想瞬间编辑基本上不可能。
2楼2012-02-27 09:18:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lt292

金虫 (正式写手)

Holy Shit

dubo(金币+1): 感谢参与 2012-02-27 17:18:49
vim
emacs
神一样的编辑器
记忆中的颜色,慢慢褪去,变成一缕缕的黑丝,最终消失在茫茫的空白里,一去不返```
3楼2012-02-27 13:03:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lurencyj

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
tiandui(金币+2): ★★★★★最佳答案 2012-02-27 18:53:25
xzhdty(金币+1): 欢迎常来程序语言 2012-02-27 21:38:43
在linux 下,删除文件file中的第1到第N行:
CODE:
sed -i    '1,N d'    file

PS: 上面是对原文件file做删除操作。
CODE:
sed   '1,N d'    file  > newfile

PS: 上面是保持原文件file不变,做删除操作后将结果另存为newfile。
很女子很弓虽大
4楼2012-02-27 16:10:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

christina1213

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
tiandui(金币+1): 有帮助 2012-02-27 18:53:35
xzhdty(金币+1): 欢迎常来程序语言 2012-02-27 21:38:57
利用perl脚本重新打印后面N行,就可以了:
先检查一下文件的行数$n;
利用for($i=n+1,$1<$n,$i++);
while($line=;
print OUTPUT $line;
这样大概就好了,很快的,如果要指,可以用opendir打开目录,读取文件名,指处理所有的文件。
5楼2012-02-27 16:53:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tiandui

新虫 (初入文坛)

引用回帖:
: Originally posted by lt292 at 2012-02-27 13:03:36:
vim
emacs
神一样的编辑器

……用过WINDOWS下的VIM,反应很慢,等了很久后提示说内存不够 。。。
6楼2012-02-27 18:38:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tiandui

新虫 (初入文坛)

引用回帖:
: Originally posted by christina1213 at 2012-02-27 16:53:30:
利用perl脚本重新打印后面N行,就可以了:
先检查一下文件的行数$n;
利用for($i=n+1,$1<$n,$i++);
while($line=<INPUT>;
print OUTPUT $line;
这样大概就好了,很快的,如果要指,可以用opendir打 ...

Perl还不会用。。。于是不知道效率怎么样啊
8楼2012-02-27 18:50:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

你的文件多大,多少行,每行都是什么数据
你目前实现的最快速度是多少?
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
9楼2012-02-27 23:05:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

christina1213

木虫 (正式写手)


jjdg(金币+1): 感谢参与 2012-03-06 02:19:30
perl的执行效率没有C高,但是处理文本真的很方便……对于这样简单的处理,perl还是很快的。最好在服务器上算……自己的机器可能内存有点小
10楼2012-03-05 22:23:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tiandui 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 23jxep3nCNZb 2026-09-14 4/200 2026-09-17 04:04 by k06BKNblrGRH
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +6 6F5UbRU2I5hL 2026-09-14 6/300 2026-09-17 03:38 by k06BKNblrGRH
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 s3fFTmArrBt6 2026-09-14 5/250 2026-09-17 02:50 by Tql5LQhh5rLK
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +6 s3fFTmArrBt6 2026-09-13 8/400 2026-09-17 02:04 by Tql5LQhh5rLK
[博后之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 LwdutQ8HoqWP 2026-09-13 3/150 2026-09-17 02:02 by Tql5LQhh5rLK
[考研] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +7 3n8v2C8RimXI 2026-09-13 8/400 2026-09-17 01:38 by Tql5LQhh5rLK
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +7 QUjhNVAcOSff 2026-09-13 8/400 2026-09-17 01:16 by Tql5LQhh5rLK
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 vZfe6xYu34yj 2026-09-14 3/150 2026-09-16 22:52 by Tql5LQhh5rLK
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 Aj1rhIDL5ixY 2026-09-14 4/200 2026-09-16 22:16 by Tql5LQhh5rLK
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 yaCh4X3wd045 2026-09-14 3/150 2026-09-16 20:39 by MHf40yA0Uhyb
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-16 17:12 by i3KBRD19ERkG
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 s3fFTmArrBt6 2026-09-14 4/200 2026-09-16 16:51 by i3KBRD19ERkG
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 QUjhNVAcOSff 2026-09-13 5/250 2026-09-16 14:39 by i3KBRD19ERkG
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 vZfe6xYu34yj 2026-09-14 3/150 2026-09-16 08:51 by SjQobnC04j06
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 40ms4Wlo4umh 2026-09-14 4/200 2026-09-16 06:36 by LH5NkK5Ud4bh
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 LwdutQ8HoqWP 2026-09-13 5/250 2026-09-16 03:14 by DgNGHc3h5tPl
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 Aj1rhIDL5ixY 2026-09-14 3/150 2026-09-15 20:26 by zNcEhTcH7ihq
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +7 s3fFTmArrBt6 2026-09-14 7/350 2026-09-15 16:23 by CgyNCDVNhGVg
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 23jxep3nCNZb 2026-09-14 3/150 2026-09-15 09:38 by VMDqgnlKimtZ
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 4/200 2026-09-15 07:02 by 5BDX0d0WFp7t
信息提示
请填处理意见