处理xml的命令工具

前端之家收集整理的这篇文章主要介绍了处理xml的命令工具前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

XMLStarlet or another XPath engine is the correct tool for this job.

For instance,withdata.xmlcontaining the following:

<root> <item><title>15:54:57 - George:</title><description>Diane DeConn? You saw Diane DeConn!</description></item>15:55:17 - Jerry:Something huh?</root>

...you can extract only the first title with the following:

xmlstarlet sel -t m '//title[1]' v .n <dataxml

Trying to use sed for this job istroublesome. For instance,the regex-based approaches won't work if the title has attributes; won't handle CDATA sections; won't correctly recognize namespace mappings; can't determine whether a portion of the XML documented is commented out; won't unescape attribute references (such as changingBrewster &amp; JobstoBrewster & Jobs),and so forth.
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

Do you reallyhave touse only those tools? They're not designed for XML processing,and although it's possible to get something that works OK most of the time,it will fail on edge cases,like encoding,line breaks,etc.

I recommend xml_grep:

xml_grep 'job' jobsxml --text_only

Which gives the output:

programming

On ubuntu/debian,xml_grep is in the xml-twig-tools package.

猜你在找的XML相关文章