linux sed命令删除特殊字符(含斜线、冒号等转义字符)

2 篇文章 0 订阅

简介

sed 是一种在线编辑器,它一次处理一行内容。
处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space)。
接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。
Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

sed 用法

利用sed命令,删除一个文件中,含有特定字符的文件。
1、删除file文件中含有abc字符串的行:
    sed '/abc/d' file
如果需要将删除的结果输出到制定文件,直接重定向到文件就可以了
    sed '/abc/d' file > output_file
2、删除file文件中,含有特殊字符的行,如左斜线“/”
这个时候,需要用双引号作为sed的操作指令。
如删除file文件中,含有“a/b/Makefile:106:”字符串的行。
sed "/a\/b\/Makefile:106: warning:/d" file
对于a\ /b中,右划线“\"为转义字符,"\ /"代表转义之后,为一个“/”字符。
所以,“/a\ /b\ /Makefile:106:”,经过转义之后,实为“a/b/Makefile:106:”

3、实例
#cat source_file.txt 
test for sed
a/b/Makefile:106: warning:11111
line3 
a/b/Makefile:106: warning:222222
line5
end
输入sed命令,进行删除掉含有“a/b/Makefile:106:”字符串的行。
#sed "/a\/b\/Makefile:106: warning:/d" source_file.txt 
test for sed
line3 
line5
end
如果需要将结果保存到文件,直接加一个重定向即可。
    sed "/a\/b\/Makefile:106: warning:/d" source_file.txt  > output.txt
  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值