Подстановки оболочки
Подстановка выполняется в командной строке после того, как она была разбита на tokenы. Bash выполняет следующие подстановки:
- подстановка скобок
- подстановка тильды
- подстановка параметров и переменных
- подстановка команд
- арифметическая подстановка
- разбиение на слова
- подстановка имен файлов
- удаление кавычек
Подстановки выполняются в следующем порядке: подстановка скобок; подстановка тильды, подстановка параметров и переменных, арифметическая подстановка и подстановка команд (выполняются слева направо); разбиение на слова; подстановка имен файлов; удаление кавычек.
В системах, которые это поддерживают, доступен дополнительный вид подстановки: подстановка процессов. Она выполняется одновременно с подстановкой тильды, параметров, переменных и арифметических выражений, а также с подстановкой команд.
Удаление кавычек всегда выполняется последним. При этом удаляются символы кавычек, присутствовавшие в исходном слове, но не те, которые появились в результате других подстановок, если только они сами не были заключены в кавычки. Подробнее см. в разделе Удаление кавычек.
Только подстановка скобок, разбиение на слова и подстановка имен файлов могут увеличить количество слов в результате подстановки; при остальных подстановках одно слово преобразуется в одно слово. Исключения составляют только подстановки "$@" и $* (см. раздел Специальные параметры), а также "${name[@]}" и ${name[*]} (см. раздел Массивы).
- Подстановка скобок
- Подстановка тильды
- Подстановка параметров оболочки
- Подстановка команд
- Арифметическая подстановка
- Подстановка процессов
- Разбиение на слова
- Подстановка имен файлов
- Удаление кавычек
Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
https://www.gnu.org/software/bash/manual/html_node/Shell-Expansions.html