6.3.3 Interactive Shell Behavior
When the shell is running interactively, it changes its behavior in
several ways.
     
- 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
signals 
SIGTTIN, SIGTTOU, and SIGTSTP.
      - 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, $PS1
(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 set -o
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 $HISTFILE
when an interactive shell exits.
     
 - Alias expansion (see Aliases) is performed by default.
     
 - In the absence of any traps, Bash ignores 
SIGTERM
(see Signals).
      - In the absence of any traps, 
SIGINT is caught and handled
((see Signals). 
SIGINT will interrupt some shell builtins.
      - An interactive login shell sends a 
SIGHUP to all jobs on exit
if the 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
MAIL, MAILPATH, and 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 
${var:?word} expansions
(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 
cd
builtin is enabled by default (see the description of the cdspell
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
printing $PS1 (see Bash Variables).