Go to the previous, next section.

Bash Variables

These variables are set or used by bash, but other shells do not normally treat them specially.

HISTCONTROL
history_control
Set to a value of `ignorespace', it means don't enter lines which begin with a space or tab into the history list. Set to a value of `ignoredups', it means don't enter lines which match the last entered line. A value of `ignoreboth' combines the two options. Unset, or set to any other value than those above, means to save all lines on the history list.

HISTFILE
The name of the file to which the command history is saved.

HISTSIZE
If set, this is the maximum number of commands to remember in the history.

histchars
Up to three characters which control history expansion, quick substitution, and tokenization (see section History Interaction). The first character is the history-expansion-char, that is, the character which signifies the start of a history expansion, normally `!'. The second character is the character which signifies `quick substitution' when seen as the first character on a line, normally `^'. The optional third character is the character which signifies the remainder of the line is a comment, when found as the first character of a word, usually `#'. The history comment character causes history substitution to be skipped for the remaining words on the line. It does not necessarily cause the shell parser to treat the rest of the line as a comment.

HISTCMD
The history number, or index in the history list, of the current command. If HISTCMD is unset, it loses its special properties, even if it is subsequently reset.

hostname_completion_file
HOSTFILE
Contains the name of a file in the same format as `/etc/hosts' that should be read when the shell needs to complete a hostname. You can change the file interactively; the next time you attempt to complete a hostname, Bash will add the contents of the new file to the already existing database.

MAILCHECK
How often (in seconds) that the shell should check for mail in the files specified in MAILPATH.

PROMPT_COMMAND
If present, this contains a string which is a command to execute before the printing of each primary prompt ($PS1).

UID
The numeric real user id of the current user.

EUID
The numeric effective user id of the current user.

HOSTTYPE
A string describing the machine Bash is running on.

OSTYPE
A string describing the operating system Bash is running on.

FIGNORE
A colon-separated list of suffixes to ignore when performing filename completion A file name whose suffix matches one of the entries in FIGNORE is excluded from the list of matched file names. A sample value is `.o:~'

INPUTRC
The name of the Readline startup file, overriding the default of `~/.inputrc'.

BASH_VERSION
The version number of the current instance of Bash.

IGNOREEOF
Controls the action of the shell on receipt of an EOF character as the sole input. If set, then the value of it is the number of consecutive EOF characters that can be read as the first characters on an input line before the shell will exit. If the variable exists but does not have a numeric value (or has no value) then the default is 10. If the variable does not exist, then EOF signifies the end of input to the shell. This is only in effect for interactive shells.

no_exit_on_failed_exec
If this variable exists, the shell will not exit in the case that it couldn't execute the file specified in the exec command.

nolinks
If present, says not to follow symbolic links when doing commands that change the current working directory. By default, bash follows the logical chain of directories when performing commands such as cd which change the current directory.

For example, if `/usr/sys' is a link to `/usr/local/sys' then:

$ cd /usr/sys; echo $PWD
/usr/sys
$ cd ..; pwd
/usr

If nolinks exists, then:

$ cd /usr/sys; echo $PWD
/usr/local/sys
$ cd ..; pwd
/usr/local

See also the description of the -P option to the set builtin, section The Set Builtin.

Go to the previous, next section.