!
инверсия (или логическое отрицание) используемое в условных операторах.
Оператор ! инвертирует код завершения команды, к которой он применен. (см. Пример 6-2). Так же используется для логического отрицания в операциях сравнения, например, операция сравнения "равно" ( = ), при использовании оператора отрицания, преобразуется в операцию сравнения -- "не равно" ( != ). Символ ! является зарезервированным ключевым словом BASH.В некоторых случаях символ ! используется для косвенного обращения к переменным.
Кроме того, из
*
символ-шаблон.
[звездочка] Символ * служит "шаблоном" для подстановки в имена файлов. Одиночный символ * означает любое имя файла в заданном каталоге.В регулярных выражениях токен * представляет любое количество (в том числе и 0) символов.
*
арифметический оператор.
В арифметических выражениях символ * обозначает операцию умножения.Двойная звездочка (два символа звездочки, следующих подряд друг за другом -- **), обозначает операцию возведения в степень.
?
Оператор проверки условия.
В некоторых выражениях символ ? служит для проверки выполнения условия.В конструкциях с двойными скобками, символ ? подобен трехместному оператору языка C. См. Пример 9-28.
В выражениях с подстановкой параметра, символ ? проверяет -- установлена ли переменная.
?
сивол-шаблон.
Символ ? обозначает одиночный символ при подстановке в имена файлов. В регулярных выражениях служит для обозначения одиночного символа.$
Подстановка переменной.
Символ $, предшествующий имени переменной, указывает на то, что будет получено
$
end-of-line (конец строки).
В регулярных выражениях, символ "$" обозначает конец строки.${}
Подстановка параметра.
$*, $@
параметры командной строки.
$?
код завершения.
Переменная $? хранит код завершения последней выполненной команды, функции или сценария.$$
id процесса.
Переменная $$ хранит()
группа команд.
Переменные, создаваемые в дочернем процессе не видны в "родительском" сценарии. Родительский процесс-сценарий, не может обращаться к переменным, создаваемым в дочернем процессе.
инициализация массивов.
{xxx,yyy,zzz,...}
Фигурные скобки.
Команда интерпретируется как список команд, разделенных точкой с запятой, с вариациями, представленными в
echo {file1,file2}\ :{\ A," B",' C'}
{}
Блок кода.
[фигурные скобки] Известен так же как "вложенный блок", эта конструкция, фактически, создает анонимную функцию. Однако, в отличии от обычных функций, переменные, создаваемые во вложенных блоках кода, доступны объемлющему сценарию.Код, заключенный в фигурные скобки, может выполнять перенаправление ввода-вывода.