Chinaunix首页 | 论坛 | 博客
  • 博客访问: 968944
  • 博文数量: 200
  • 博客积分: 5011
  • 博客等级: 大校
  • 技术积分: 2479
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-27 15:07
文章分类

全部博文(200)

文章存档

2009年(12)

2008年(190)

我的朋友

分类:

2008-07-10 15:24:58

在sed中使用其它的分隔符

    在sed中,可以使用别的字符来作为pattern的分隔符,即不再使用'/',例如:
    sed 's/old/new/g' 可以被替换为
    sed 's,old,new,g'
    需要注意的是,在第一种情况下,'/'是分隔符,因此它有特别的含义,因此如果pattern中出现了'/',需要使用转移字符'\'。而在第2种情况下,'/'不再是分隔符,他不具有特殊的含义了,因此在pattern中可以直接使用了,而不用再加转移字符'\',而','有了特殊作用,因此如果','出现在pattern中的时候,应该加上转移字符。
    看如下例子:
    echo $PATH | sed 's,.*/,,;'
    上述命令的含义是将PATH中的path,即xxxxx/去掉,从而得到最终的文件名。
    crosstool工具的脚本getandpatch.sh中就这样使用了这个命令。
阅读(8930) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~