linux 如何快速删除大文件的第一行

linux 如何快速删除大文件的第一行,第1张

可以用sed命令实现:

1、删除文档的第一行

sed

-i

'1d'

<file>

2、删除文档的最后一行

sed

-i

'$d'

<file>

3、在文档指定行中增加一行

例如文档如下:

echo

"1"

echo

"2"

echo

"4"

echo

"5"

想要在echo

"2"后面加上一条echo

"3"可以用如下命令

sed

-i

'/echo

"2"/aecho

"3"'

<file>

之所以用分号,是因为文本中本来就有。也就是说分号不是必须的!

抽象出来就是:

sed

-i

'/*

/a*'

<file>

4、删除文件中的一行

sed

-i

'3d'

<file>

5、删除文件中包含某个关键字开头的所有行

sed

-i

'/^QWQ/d'

<file>

6、删除文件中包含某个关键字的所有行

sed

-i

'/QWQ/d'

<file>

用sed工具配合正则表达式实现,单引号内就是正则

# sed -n '2,$p' /etc/passwd

# cat /etc/passwd | sed -n '2,$p'

-n    仅输出符合条件的行

p    打印内容

2,$  第2行到最后一行。

建议你去查找sed工具的使用方法和正则表达式,熟悉正则表达式的元字符

祝你好运~~~

1、删从0行到happy行

sed -i '0,/happy/d' test.txt

2、删从0行到happy行里面的happy行,相当于删除第一个happy行

sed -i '0,/happy/{/happy/d}' test.txt

3、{}组合命令:

一组命令作为一个块被应用

函数命令之间用""分割

组合可以嵌套


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8623609.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存