Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I have the following command

xmllint --xpath "//*[local-name()='softwareSystem']/module/rootPath[not(@*[local-name()='type'])]/@name" file.xml

and would like to sperate each module (every matching) on a new line

thanks for help

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
165 views
Welcome To Ask or Share your Answers For Others

1 Answer

I don't have your html so I have to guess, but with xmlstarlet, for example, try something like:

xmlstarlet sel -t -m "//*[local-name()='softwareSystem']/module/rootPath[not(@*[local-name()='type'])]" -v $'concat(@name,"
")' file.xml

or

xmlstarlet sel -t -m "//*[local-name()='softwareSystem']/module/rootPath[not(@*[local-name()='type'])]" -v $@name file.xml -n file.xml

and see if it works.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...