Spec-Zone.ru › Bash

Подстановки оболочки

​

Подстановка выполняется в командной строке после того, как она была разбита на 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API