Chinaunix

标题: 请教一个sed问题 [打印本页]

作者: yuipr    时间: 2012-03-22 13:40
标题: 请教一个sed问题
  <project name="R7627A/device/common" path="device/common" revision="31b0557eecd8d45728f3d65977512a1d2087c410"/>
  <project name="R7627A/device/htc/common" path="device/htc/common" revision="867f8b454d754ff496b66527407753c451f54277"/>
  <project name="R7627A/device/htc/passion" path="device/htc/passion" revision="15ef3de8a2b15686bc0ea7ea4b802ae4af5a72ba"/>
  <project name="R7627A/device/htc/passion-common" path="device/htc/passion-common" revision="4fc91886b53b013b38b7cfc67fd35710207dc875"/>
  <project name="R7627A/device/qcom/common" path="device/qcom/common" revision="f9961e23e8a72452a2a5d9d49fb27c1cd23a5fcc"/>
  要将上面行中的revision后面的都去掉.变成下面的结果,用sed,awk应该怎么实现?
<project name="R7627A/device/common" path="device/common" />
作者: yinyuemi    时间: 2012-03-22 13:43
s/revision=[^/]\+//
作者: yuipr    时间: 2012-03-22 13:47
yinyuemi 发表于 2012-03-22 13:43
s/revision=[^/]\+//

这是可以的,还是不太明白你写的这个,能给解释下么
我刚开始是用的sed 's/revision.*//g' 发现这样把/>也给去掉了.
作者: yinyuemi    时间: 2012-03-22 13:52
回复 3# yuipr


    .*是贪婪匹配
作者: yuipr    时间: 2012-03-22 13:55
s/revision=[^/]\+//
能把你这个给解释下么
作者: yinyuemi    时间: 2012-03-22 13:57
回复 5# yuipr


    [^/]匹配非'/'的字符
   \+  匹配大于等于1个字符
作者: jiejie455    时间: 2012-03-22 14:15
sed 's@revision.*\/@@'
作者: yuipr    时间: 2012-03-22 14:22
yinyuemi 发表于 2012-03-22 13:57
回复 5# yuipr

明白了,谢了
作者: dragon23452345    时间: 2012-03-22 14:50
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2