XSH (the XML Editing Shell) is a very powerful command-line shell designed to allow easy navigation and manipulation of XML documents. XSH may be used either interactively or for off-line XML processing (like bash). XPath can be used to select parts of an XML document to be listed or processed. The system shell and Perl are also accessible from XSH in a very natural way. XSH itself is written in Perl using the XML::LibXML bindings of the libxml2 library.