XPath supports a surprising feature set that enables reading environment variables, files, directories and even network
resources. Rather than add individual subcommands to xcat for each of these they are available under a single
command that lets you quickly explore and evaluate arbitrary expressions.
It supports interactive help via auto-completions, history and command suggestions.
This demo shows the shell in action. Through it I list the current working directory using
ls, then retrieve
the Dockerfile using
cat. I also list the environment variables using
A full list of commands and their argiuments can be found by running
help in the shell. At the time of writing
the output is:
XCat$ help Available commands: env: Read environment variables pwd: Get current working directory get: [expression] - Fetch a specific node by xpath expression get-string: [expression] - Fetch a specific string by xpath expression time: Get the current date+time of the server cat: [path] - Read a file or directory toggle: Toggle features on or off resolve: [path] - Resolve a file name to an absolute URI find: [name] - Find a file by name in parent directories expect-data: Add an entry to the OOB server to expect some data expect-entity-injection: [file_path] - Add an entry to the OOB server to expect a SYSTEM entity injection get-oob-data: [identifier] - Get OOB data from an identifier exit: Quit the shell help: Get help