如何从Unix命令行中删除XML标签?

我正在播放一个XML文件,它给我的输出如下所示:
<tag>data</tag>
<tag>more data</tag>
...

请注意,这是一个平面文件,而不是XML树.我想删除XML标签,只显示数据之间.我正在从命令行做所有这一切,并想知道是否有一个更好的方式,而不是管道到awk两次…

cat file.xml | awk -F'>' '{print $2}' | awk -F'<' '{print $1}'

理想情况下,我想在一个命令中这样做

如果您的文件看起来像这样,那么sed可以帮助你:
sed -e 's/<[^>]*>//g' file.xml

当然是you should not use regular expressions for parsing XML because it’s hard.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...