TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #541 702
Brace expansion для массовых операций

Brace expansion - это встроенная фича, которая позволяет генерировать списки прямо в командной строке. Работает быстро, читаемо и без лишних for.

▪️ Диапазоны чисел


echo {1..5}

1 2 3 4 5


С шагом:


echo {1..10..2}

1 3 5 7 9


▪️ Диапазоны букв


echo {a..e}

a b c d e


▪️ Массовое создание файлов


touch file_{1..5}.txt


Создаст:


file_1.txt
file_2.txt
...


▪️ Создание каталогов


mkdir -p project/{src,bin,config,logs}


Результат:


project/src
project/bin
project/config
project/logs


▪️ Комбинирование


echo {dev,prod}_{1..3}

dev_1 dev_2 dev_3 prod_1 prod_2 prod_3


▪️ Практика: быстрые шаблоны. Создать структуру окружений


mkdir -p env/{dev,stage,prod}/{logs,tmp,data}


Создать пачку логов


touch log_{2024..2026}_{01..12}.log


Удаление группы файлов


rm file_{1..10}.txt


⚠️ Важный момент. Brace expansion происходит до выполнения команды. Это не цикл и не glob. Например:


echo file_{1..3}.txt


сначала превращается в:


echo file_1.txt file_2.txt file_3.txt


BashTex 📱 #bash #utils
  • 👍 9
More from @bash_tex
  1. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  2. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  3. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  4. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  5. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
  6. Oct 1, 2026flock vs fcntl - почему две блокировки одного файла могут вести себя совершенно по-разному…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →