6.3.3 Interactive Shell Behavior
When the shell is running interactively, it changes its behavior in
- Startup files are read and executed as described in Bash Startup Files.
- Job Control (see Job Control) is enabled by default. When job
control is in effect, Bash ignores the keyboard-generated job control
- Bash expands and displays
PS1 before reading the first line
of a command, and expands and displays
PS2 before reading the
second and subsequent lines of a multi-line command.
- Bash executes the value of the
PROMPT_COMMAND variable as a command
before printing the primary prompt,
(see Bash Variables).
- Readline (see Command Line Editing) is used to read commands from
the user’s terminal.
- Bash inspects the value of the
ignoreeof option to
instead of exiting immediately when it receives an
EOF on its
standard input when reading a command (see The Set Builtin).
- Command history (see Bash History Facilities)
and history expansion (see History Interaction)
are enabled by default.
Bash will save the command history to the file named by
when an interactive shell exits.
- Alias expansion (see Aliases) is performed by default.
- In the absence of any traps, Bash ignores
- In the absence of any traps,
SIGINT is caught and handled
SIGINT will interrupt some shell builtins.
- An interactive login shell sends a
SIGHUP to all jobs on exit
huponexit shell option has been enabled (see Signals).
- The -n invocation option is ignored, and ‘set -n’ has
no effect (see The Set Builtin).
- Bash will check for mail periodically, depending on the values of the
MAILCHECK shell variables
(see Bash Variables).
- Expansion errors due to references to unbound shell variables after
‘set -u’ has been enabled will not cause the shell to exit
(see The Set Builtin).
- The shell will not exit on expansion errors caused by var being unset
or null in
(see Shell Parameter Expansion).
- Redirection errors encountered by shell builtins will not cause the
shell to exit.
- When running in POSIX mode, a special builtin returning an error
status will not cause the shell to exit (see Bash POSIX Mode).
- A failed
exec will not cause the shell to exit
(see Bourne Shell Builtins).
- Parser syntax errors will not cause the shell to exit.
- Simple spelling correction for directory arguments to the
builtin is enabled by default (see the description of the
option to the
shopt builtin in The Shopt Builtin).
- The shell will check the value of the
TMOUT variable and exit
if a command is not read within the specified number of seconds after
$PS1 (see Bash Variables).