xmlstarlet - Man Page
command line XML/XSLT toolkit
Examples (TL;DR)
- Format an XML document and print to
stdout
:xmlstarlet format path/to/file.xml
- XML document can also be piped from
stdin
:cat path/to/file.xml | xmlstarlet format
- Print all nodes that match a given XPath:
xmlstarlet select --template --copy-of xpath path/to/file.xml
- Insert an attribute to all matching nodes, and print to
stdout
(source file is unchanged):xmlstarlet edit --insert xpath --type attr --name attribute_name --value attribute_value path/to/file.xml
- Update the value of all matching nodes in place (source file is changed):
xmlstarlet edit --inplace --update xpath --value new_value file.xml
- Delete all matching nodes in place (source file is changed):
xmlstarlet edit --inplace --delete xpath file.xml
- Escape or unescape special XML characters in a given string:
xmlstarlet [un]escape string
- List a given directory as XML (omit argument to list current directory):
xmlstarlet ls path/to/directory
Synopsis
xml [options...] {command} [cmd-options...]
Introduction
XMLStarlet is a set of command line utilities (tools) which can be used to transform, query, validate, and edit XML documents and files using simple set of shell commands in similar way it is done for plain text files using UNIX grep, sed, awk, diff, patch, join, etc commands. This set of command line utilities can be used by those who deal with many XML documents on UNIX shell command prompt as well as for automated XML processing with shell scripts.
Options
- --version
Display the version of xmlstarlet.
- --help
Display help.
Commands
xml command --help for command specific help
Available commands include:
- ed (or edit)
Edit/update XML document(s).
- sel (or select)
Select data or query XML document(s) (XPATH, etc).
- tr (or transform)
Transform XML documents(s) using XSLT.
- val (or validate)
Validate XML document(s) (well-formed/DTD/XSD/RelaxNG).
- fo (or format)
Format XML document(s).
- el (or elements)
Display element structure of XML document.
- c14n (or canonic)
XML canonicalization.
- ls (or list)
List directory as XML.
- esc (or escape)
Escape special XML characters.
- unesc (or unescape)
Unescape special XML characters.
- pyx (or xmln)
Convert XML into PYX format (based on ESIS - ISO 8879).
- p2x (or depyx)
Convert PYX into XML.
References
XMLStarlet is a command line toolkit to query/edit/check/transform XML documents (for more information see http://xmlstar.sourceforge.net/).
Bugs
Report bugs to the mailing list, xmlstar-devel@lists.sourceforge.net or the bug tracker: http://sourceforge.net/tracker/?group_id=66612&atid=515106.
Author
Mikhail Grushinskiy
XMLStarlet creator.
Copyright
Copyright © 2012