我正在播放一个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.