LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1523|回复: 5

如何使用sed删除文件内的多个行?已解决

[复制链接]
发表于 2010-8-14 15:58:33 | 显示全部楼层 |阅读模式
如果要删除一个文件内的多个行怎么办?

例如要删除一个文件内第5到300行要怎么做?
 楼主| 发表于 2010-8-14 16:07:43 | 显示全部楼层
搞定了,find ./ -type f -name "*.html" |xargs sed -i '5,213d',查找当前目录下所有的html文件,然后删除5-213行

现在想问一下,如何删除有CENTER内容的行到结束?
搞定了
find ./ -type f -name "*.html" |xargs sed -i '/CENTER/,5000d'
回复 支持 反对

使用道具 举报

发表于 2010-8-15 20:05:20 | 显示全部楼层
删除有CENTER内容的行到结束
sed '/CENTER,$'d
回复 支持 反对

使用道具 举报

发表于 2010-8-16 14:05:24 | 显示全部楼层
Post by echo;2108217
如果要删除一个文件内的多个行怎么办?

例如要删除一个文件内第5到300行要怎么做?


sed '5,300d'
保存到新文件用重定向, 直接保存用" -i  "
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-8-19 21:09:23 | 显示全部楼层
Post by rem1x;2108352
删除有CENTER内容的行到结束
sed '/CENTER,$'d


这里的$是不是代表从CENTER开始后的所有的行?
回复 支持 反对

使用道具 举报

发表于 2010-8-20 08:57:43 | 显示全部楼层
$表示到末尾
回复 支持 反对

使用道具 举报

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

本版积分规则

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