用grep/sed从XML文件中提取单词 [英] Grep a word from XML file with grep/sed

查看:307
本文介绍了用grep/sed从XML文件中提取单词的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究Linux Shell脚本,以使用grep在xml文件中查找信息.我需要的信息是不带标签的用户名wipis_dxu.我不允许使用xgrep之类的工具或其他工具.

I am working on a linux shell script to find information in a xml file using grep. The information I need is the Username wipis_dxu without the tag. I am not allowed to use tools like xgrep or something else.

<Parameter displayName="Server" id="Server">
 <value>dxstg.target_domain</value>
</Parameter>
<Parameter isRequired="true" displayName="User name" id="Username">
  <value>wipis_dxu</value>
</Parameter>
<Parameter isRequired="true" displayName="Password" id="Password">
  <value>wovon_man_nicht_reden_kann_darueber_muss_mann_schweigen</value>
</Parameter>

推荐答案

$ sed -nr '/Username/{n;s#.*>(.*)<.*#\1#p}' file
wipis_dxu

简要说明,

  • /Username/:查找用户名
  • n:阅读输入的下一行
  • s#.*>(.*)<.*#\1#p:提取> ... <
  • 之间的字符串
  • /Username/: find Username
  • n: Read the next line of input
  • s#.*>(.*)<.*#\1#p: extract the string between > ... <

这篇关于用grep/sed从XML文件中提取单词的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆