Usage:

  jboss-cli.sh/jboss-cli.bat [--help] [--version] [--controller=host:port]
                     [--connect] [--file=file_path]
                     [--commands=command_or_operation1,command_or_operation2...]
                     [--command=command_or_operation]
                     [--user=username --password=password]
                     [--timeout=timeout]

 --help (-h)     - prints (this) basic description of the command line utility.

 --version       - prints the version info of the JBoss AS release, JVM and
                   system environment.

 --controller    - the default controller host and port to connect to when
                   --connect option (described below) is specified or when the
                   connect command is issued w/o the arguments. The default
                   controller host is localhost and the port is 9999.

 --connect (-c)  - instructs the CLI to connect to the controller on start-up
                   (to avoid issuing a separate connect command later).

 --gui           - GUI built on top of the CLI, the only difference is that it
                   brings up a GUI instead of a command line. In this mode, the
                   CLI will automatically connect during start-up. You can
                   optionally specify --controller, if necessary.

 --file          - specifies a path to a file which contains commands and
                   operations (one per line) that should be executed (in a
                   non-interactive mode). The CLI will terminate the session
                   immediately after the last command has been executed or if
                   some command or operation failed.

 --command       - specifies a single command or an operation that should be
                   executed in the CLI session. The CLI will terminate the
                   session immediately after the command or the operation has
                   been executed. Note: --command argument is optional in a
                   sense that any word (or phrase without whitespaces in it)
                   will be assumed to be a command (or an operation).

 --commands      - specifies a comma-separated list (the list must not contain
                   whitespaces) of commands and operations that should be
                   executed in the CLI session. The CLI session will be
                   automatically terminated as soon as the last command or
                   operation has been executed or after the first error. Note:
                   --commands argument is optional in a sense that any
                   comma-separated list at the end of the argument list will be
                   assumed to be the list of commands and operations.

 --user          - if the controller requires user authentication, this argument
                   can be used to specify the user name as a command line
                   argument. If the argument isn't specified and the
                   authentication is required the user will be prompted to enter
                   the user name when the connect command is issued.

 --password      - specifies the password for authentication while connecting to
                   the controller as a command line argument. If the argument
                   isn't specified and the authentication is required the user
                   will be prompted to enter the password when the connect
                   command is issued.

 --timeout       - specifies home many milliseconds to wait for a given command
                   to return. The value provided must be a positive integer.
                   Defaults to 5000 milliseconds when not provided.


For a list of available commands execute

  help --commands

The resulting listing may depend on the current context. E.g. some of the
commands require an established connection to the controller (standalone or
domain). These commands won't appear in the listing unless the connection has
been established. Other commands may depend on the availability of specific
subsystems. E.g. if the messaging subsystem is not available, messaging-related
commands will not be listed.

Here are some of the most basic supported commands:

 cn (or cd)             - change the current node path to the argument;
 connect                - connect to the server or domain controller;
 deploy                 - deploy an application;
 help (or h)            - print this message;
 history                - print or disable/enable/clear the history expansion;
 ls                     - list the contents of the node path;
 pwn (or pwd)           - prints the current working node;
 quit (or q)            - quit the command line interface;
 undeploy               - undeploy an application;
 version                - prints the version and environment information.

For a more detailed description of a specific command, execute the command with
'--help' as the argument.

Tab-completion is supported for the commands, just press the tab key to start.

Operation requests start with './' or '/' and follow the format:

[node-type=node-name (/node-type=node-name)*] : operation-name ['('[name=value [, name=value]*]')'] [{header (;header)*}]

e.g. /subsystem=web/connector=http:read-attribute(name=protocol)

If the operation request doesn't require a node path then the request can start
with ':' followed by an operation name and the property list if necessary ('/:'
and './:' are also possible).

Whitespaces between the separators are insignificant.
If the operation doesn't require arguments then the brackets '()' are optional.
Tab-completion for operation requests supports node types and names, operation
names, property names and, in some cases, values.
