加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 如何只对文件的第一行进行更改?

发布时间:2020-12-15 22:03:51 所属栏目:大数据 来源:网络整理
导读:我想知道我可以在sed中使用哪种模式来更改第一行巨大文件(?2 GB).对sed的偏好只是因为我认为它必须比 Python或Perl脚本更快. 文件具有以下结构: field 1,field 2,... field ndata 并且,鉴于每个字段的标识符中都有空格的可能性,我需要用下划线替换每个空格
我想知道我可以在sed中使用哪种模式来更改第一行巨大文件(?2 GB).对sed的偏好只是因为我认为它必须比 Python或Perl脚本更快.

文件具有以下结构:

field 1,field 2,... field n
data

并且,鉴于每个字段的标识符中都有空格的可能性,我需要用下划线替换每个空格:

**BEFORE** 
the first name,the second name,the first surname,a nickname,...
data

**AFTER**
the_first_name,the_second_name,the_first_surname,a_nickname,...
data

任何指向正确使用模式的指针,或者另一种脚本解决方案将是巨大的.

解决方法

编辑前10行
sed -i -e '1,10s/ /_/g'

在Perl中,您可以在标量上下文中使用触发器操作符:

perl -i -pe 's/ /_/g if 1 .. 10'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读