1 2 3 4 5 6 7 8 9 10 11 12 |
Образование последовательностей символов с помощью {}. Из последовательностей символов, заключенных в фигурные скобки, 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 |
Вычисление арифметических выражений с помощью квадратных скобак:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
[] Обычно в bash нельзя производить вычисления. Если написать 2 + 3, то оболочка «не сообразит», что делать с этим выражением. Если вы хотите вычислять, работая с оболочкой, нужно заключить выражение в квадратные скобки и поставить перед ними символ $: echo $[2+3] 5 В квадратных скобках можно использовать большинство операторов, известных из языка программирования С: +, -, *, / для четырех основных арифметических операций, % для вычислений по модулю, ==, !=, <, <=, > и >= для сравнений, « и » для перемещений битов, !, && и | | для логических операторов NO, AND и OR и т. д. Все вычисления выполняются с 32-битными целыми числами (диапазон чисел: ±2 147 483 648). Если следует извлечь отдельные значения из переменных перед переменными, необходимо ставить символ $. Есть еще один способ производить вычисления — с помощью команды ехрг. Это самостоятельная команда Linux, работающая независимо от bash. |