Разница между скобками и обычными скобками в bash?

Какая разница между скобками и обычными скобками в bash?

К вашему сведению... Я не получил его в списке связанных вопросов, а также не смог найти его в поиске вопросов. Пожалуйста, укажите мне на вопрос, если он уже был задан.

2 ответа

Брекеты используются для расширения параметров (${foo%123}), расширение скобки в любой альтернативе ({foo,bar}) или последовательность форм ({1..25}) или в блоках кода ({ foo ; bar ; }).

Квадратные скобки используются в качестве команд сравнения ([ "$foo" -lt 3 ], [[ $bar =~ ^123 ]]), Как диапазон или класс символов в глобусе (ba[rz], foo[[:alnum:]], qu[[=u=]]x), как часть присвоения массива (foo=([2]=3 4 5), foo[42]=bar) или в раскрытии параметров при работе с массивом (${foo[@]}).

Другими словами, они совершенно разные.

Другие вопросы по тегам