hxremove(1) remove elements from an XML file by means of a CSS selector


hxremove [ -i ] [ -l language ] selector


hxremove reads a well-formed XML document from standard input and writes it to standard output without any elements that match the CSS selector that is given as argument. For example

hxremove ol li:first-child

removes the first li (list item in XHTML) from every ol (ordered list).

Assumes that class selectors (".foo") refer to an attribute called "class". And assumes that ID selectors ("#foo") refer to an attribute called "id".

To handle HTML files, make them well-formed XML first, e.g., with hxnormalize -x.

Compare with hxselect, which removes everything but the selected elements.


The following options are supported:
Match case-insensitively. Useful for HTML and some other SGML-based languages.
-l language
Sets the default language, in case the root element doesn't have an xml:lang attribute (default: none). Example: -l en
Show command usage.


The following operand is supported:
A selector. Most selectors from CSS level 3 are supported, with the exception of pseudo-classes, pseudo-elements and selectors with last- in their name.