Bash Shell Options

A POSIX compliant shell can be configured with the set and unset builtins. To inspect the enabled options, use the $SHELLOPTS shell variable.

bash(1) expands on the set of configuration options. These options are set with the shopt builtins. To inspect the enabled options, use the $BASHOPTS shell variable.


Aliases

If expand_aliases is enabled, aliases are expanded.

By default, this is enabled for interactive shells.


Compatibility Levels

bash(1) 4 introduced compatibility levels, wherein the behavior of the shell are modified.

shopt -e compat31

The modes available through the shopt builtin are:

A shell only has one compatibility level, so each mode is mutually exclusive.

From bash(1) 4.3+, use of the $BASH_COMPAT shell variable is preferred.


Extended Debugging Mode

extdebug


History

If cmdhist is enabled and command history is enabled, multi-line commands are collapsed to a single line when saving into history.

This is enabled by default.


Quoting

If extquote is enabled, ANSI quoting and local translation quoting are performed within parameter expansion.

This is enabled by default.


Window Size

If checkwinsize is enabled, bash(1) checks the window size after every (non-builtin) command. This triggers updates to the $LINES and $COLUMNS shell variables.

By default, this is enabled for interactive shells.


CategoryRicottone