Рубрики
bash

bash Фигурные скобки

Образование последовательностей символов с помощью {}. 
Из последовательностей символов, заключенных в фигурные скобки, bash образует любые мыслимые последовательности символов. 
Официальное название такого механизма подстановки — раскрытие скобок (brace expansion). 
Выражение part{1.2a.2b} означает parti part2a part2b. 
Пользуясь раскрытием скобок, можно облегчить печатную работу, если вы обращаетесь ко многим файлам и каталогам с похожими именами. 
По сравнению с джокерными символами * и ? есть определенное преимущество — можно образовывать имена еще не существующих файлов (это касается, например, mkdi r).

echo {a,b}{1.2,3}
al a2 a3 bl Ь2 ЬЗ

echo {ab,cd}{123,456.789}-{I,II}
abl23-I abl23-II ab456-I ab456-II ab789-I ab789-II cdl23-I cdl23-II cd456-I cd456-II cd789-I cd789-II

Вычисление арифметических выражений с помощью квадратных скобак:

[] 
Обычно в bash нельзя производить вычисления. 
Если написать 2 + 3, то оболочка «не сообразит», что делать с этим выражением. 
Если вы хотите вычислять, работая с оболочкой, нужно заключить выражение в квадратные скобки и поставить перед ними символ $:

echo $[2+3] 
5

В квадратных скобках можно использовать большинство операторов, 
известных из языка программирования С: +, -, *, / для четырех основных арифметических операций, 
% для вычислений по модулю,
==, !=, <, <=, > и >= для сравнений, 
« и » для перемещений битов, !, && и | | для логических операторов NO, AND и OR и т. д. 
Все вычисления выполняются с 32-битными целыми числами (диапазон чисел: ±2 147 483 648). 
Если следует извлечь отдельные значения из переменных перед переменными, необходимо ставить символ $.

Есть еще один способ производить вычисления — с помощью команды ехрг. 
Это самостоятельная команда Linux, работающая независимо от bash.