三剑客之sed用法

简介:

1.替换文本中的部分字符串(-r选项启用sed正则)

1
2
root@oldboy oldboy$ echo  "2q434343:awd_QQW.tar"  sed  -r  's/(:)[^<]*(_)[^<]*(\.)/\1replcae\2replace\3/g'
2q434343:replcae_replace. tar

说明:

 1) 只替换三个"()"之间的字符,其余字符(2q434343和tar)保持不变。

 2) (:)、(_)、(\.)分别表示文本中的":","_",".",用于后项引用,\1代表":",\2代表"_",\3代表"."。

 3) [^<]*匹配任意个非"<"的字符,此处依次匹配的为"awd"与"QQW",若将*换为+则表示一个或多个非"<"的字符。

 4) replace表示替换后的字符串。

 5) 执行完后就将"awd"与"QQW"替换为replace

 6) 若其后不写replace则会将"awd"与"QQW"字符删除掉

root@oldboy oldboy$echo "2q434343:awd_QQW.tar" | sed -r 's/(:)[^<]*(_)[^<]*(\.)/\1\2\3/g'
2q434343:_.tar




本文转自 xoyabc 51CTO博客,原文链接:http://blog.51cto.com/xoyabc/1685668,如需转载请自行联系原作者

相关文章
|
7月前
|
Perl
sed的用法
sed的用法
67 2
|
7月前
|
Unix Perl
sed的具体用法
sed的具体用法
60 2
|
7月前
|
Perl
sed的基本语法
sed的基本语法
73 2
|
7月前
|
Perl
sed的复杂用法
sed的复杂用法
93 2
|
Perl
sed 基本用法
sed 基本用法
96 0
|
存储 机器学习/深度学习 Unix
sed 和 awk 使用方法 | 学习笔记
快速学习 sed 和 awk 使用方法。
|
缓存 关系型数据库 MySQL