红联Linux门户
Linux帮助

sed命令

发布时间:2007-02-24 22:31:15来源:红联作者:lgms2008
在linux中,sed命令很有用,因此你也必须学会使用sed,在网上有很多地方介绍sed,大家可以在网上彻头彻尾的好好学习sed的具体使用。在Makefile中你会看到如下的代码
HOSTARCH:=$(shell uname -m | \
sed -e s/i.86/i386/ \
-e s/sun4u/sparc64/ \
-e s/arm.*/arm/)
在上面的例子中-e表示在一行中执行多个sed命令,s表示用后面的信息替换前面的信息.例如s/sun4u/sparc64/表示sum4u替换成sparc64,在上面的例子中就表示将当前的uname -m中的信息替换进行替换,如果是i后面有一个字符,然后有86的信息(i686)替换成i386或者如果有arm的信息替换成arm.

如下的信息是网上摘下的:
锚定行的开始 如:/^sed/匹配所有以sed开头的行。
$

锚定行的结束 如:/sed$/匹配所有以sed结尾的行。
.

匹配一个非换行符的字符 如:/s.d/匹配s后接一个任意字符,然后是d。
*

匹配零或多个字符 如:/*sed/匹配所有模板是一个或多个空格后紧跟sed的行。
[]

匹配一个指定范围内的字符,如/[Ss]ed/匹配sed和Sed。
[^]

匹配一个不在指定范围内的字符,如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一个字母开头,紧跟ed的行。
\(..\)

保存匹配的字符,如s/\(love\)able/\1rs,loveable被替换成lovers。
&

保存搜索字符用来替换其他字符,如s/love/**&**/,love这成**love**。
\<

锚定单词的开始,如:/\\>

锚定单词的结束,如/love\>/匹配包含以love结尾的单词的行。
x\{m\}

重复字符x,m次,如:/0\{5\}/匹配包含5个o的行。
x\{m,\}

重复字符x,至少m次,如:/o\{5,\}/匹配至少有5个o的行。
x\{m,n\}

重复字符x,至少m次,不多于n次,如:/o\{5,10\}/匹配5--10个o的行。
文章评论

共有 3 条评论

  1. gongjun_mail 于 2014-05-26 16:32:01发表:

    路过看看!

  2. xinghuodw 于 2014-05-24 21:50:52发表:

    路过看看

  3. ywc03 于 2007-02-27 22:33:07发表:

    :0L ,讲的很清楚。