LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1088|回复: 2

请教一个shell脚本问题,提取字符串值

[复制链接]
发表于 2009-4-13 14:21:32 | 显示全部楼层 |阅读模式
在以下内容的文本中获取 em:id的内容赋值给变量A

<?xml version="1.0"?>
<RDF:RDF xmlns:em="http://www.mozilla.org/2004/em-rdf#"
         xmlns:NC="http://home.netscape.com/NC-rdf#"
         xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

  <RDFescription RDF:about="urn:mozilla:install-manifest"
                   em:name="Better Gmail 2"
                   em:id="bettergmail2@ginatrapani.org"
                   em:version="0.7.3.2"

得到结果:
$A=bettergmail2@ginatrapani.org...


用awk:
A=`awk 'BEGIN{FS="em:id\""; RS="\""}$NF&&$NF!~/.*=.*/{print $NF}' ./install.rdf | head 1`  得到的是1.0...
 楼主| 发表于 2009-4-13 15:21:38 | 显示全部楼层
搞定了 A=`grep "em:id" ./install.rdf | head -1 | awk 'BEGIN{FS="\""; RS="\""}$NF&&$NF!~/.*=.*/{print $1}'`
回复 支持 反对

使用道具 举报

发表于 2009-4-16 22:05:16 | 显示全部楼层
A=`sed -n '/em:id/p' str.txt`  #str.txt ==install.rdf?
A=${A#em:id=\"}
A=${A%\"}

刚学,乱来,呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表