Bash Reference Manual. Node: Shell Parameters

PREVShell Functions UPBasic Shell Features NEXTShell Expansions

3.4: Shell Parameters

  • Positional Parameters The shell's command-line arguments.
  • Special Parameters Parameters with special meanings.
  • A parameter is an entity that stores values. It can be a name, a number, or one of the special characters listed below. For the shell's purposes, a variable is a parameter denoted by a name.

    A parameter is set if it has been assigned a value. The null string is a valid value. Once a variable is set, it may be unset only by using the unset builtin command.

    A variable may be assigned to by a statement of the form


    If value is not given, the variable is assigned the null string. All values undergo tilde expansion, parameter and variable expansion, command substitution, arithmetic expansion, and quote removal (detailed below). If the variable has its integer attribute set (see the description of the declare builtin in Bash Builtins), then value is subject to arithmetic expansion even if the $((...)) expansion is not used (see Arithmetic Expansion). Word splitting is not performed, with the exception of "$@" as explained below. Filename expansion is not performed.

    PREVShell Functions UPBasic Shell Features NEXTShell Expansions