Table of Contents

About

This article is about expansion in Bash.

An expansion is the replacement of a special token in your code by the result of the expansion during code execution.

It's performed on the command line after it has been split into words. See Bash - Command Execution

There are seven kinds of expansion performed:

Order

The order of expansions is:

  • brace expansion,
  • tilde expansion,
  • parameter expansion,
  • variable expansion
  • arithmetic expansion
  • and command substitution (done in a left-to-right fashion),
  • word splitting,
  • and pathname expansion.

On systems that can support it, there is an additional expansion available:

  • process substitution.

Word change

Expansions can be use to change the number of word (token) processed. See Shell - (Word|Token)