xonsh - Pythonish, BASHwards looking shell
Xonsh is a Python-ish shell language and command prompt. Unlike
other shells, xonsh is based on Python, with additional syntax added that
makes calling subprocess commands, manipulating the environment, and dealing
with the file system easy. Xonsh supports all normal Python constructs and a
subset of those available in bash.
usage: xonsh [-h] [-V] [-c COMMAND] [-i] [-l] [--rc RC [RC ...]]
[--no-rc]
- [--no-script-cache] [--cache-everything] [-D ITEM] [--shell-type
SHELL_TYPE] [--timings] [script-file] ...
xonsh
- script-file
- If present, execute the script in script-file and exit.
- args
- Additional arguments to the script specified by script-file.
- -h, --help
- Show help and exit.
- -V, --version
- Show version information and exit.
- -c COMMAND
- Run a single command and exit.
- -i,
--interactive
- Force running in interactive mode.
- -l, --login
- Run as a login shell.
- --rc RC [RC ...]
- The xonshrc files to load, these may be either xonsh files or directories
containing xonsh files
- --no-rc
- Do not load any xonsh RC files.
- --no-script-cache
- Do not cache scripts as they are run.
- --cache-everything
- Use a cache, even for interactive commands.
- -D ITEM
- Define an environment variable, in the form of -DNAME=VAL.
May be used many times.
- --shell-type
SHELL_TYPE
- What kind of shell should be used. Possible options: b, best, d, dumb,
ptk, prompt-toolkit, prompt_toolkit, rand, random, rl, readline. Warning!
If set this overrides $SHELL_TYPE variable.
- --timings
- Prints timing information before the prompt is shown. This is useful while
tracking down performance issues and investigating startup times.
The run control file is written in xonsh script and executed once
at start-up.
- /etc/xonshrc
- System-wide run control file
- ~/.xonshrc
- Per-user run control file
In addition to the run control file, a JSON formatted static file
can be used to set runtime parameters and environment variables before the
xonshrc files are executed.
- $XDG_CONFIG_HOME/xonsh/config.json
- Per-user static config file