Одна из недооцененных фич bash - фигурные скобки {}. Она позволяет за одну строку сгенерировать множество вариантов команды.
▪️ Пример с файлами
touch file-{1,2,3}.md
Создаст сразу три файла:
file-1.md
file-2.md
file-3.md
▪️ Полезные варианты
1️⃣ Диапазоны чисел
mkdir backup-{2022..2025}
Создаст папки:
backup-2022 backup-2023 backup-2024 backup-2025
2️⃣ Диапазоны букв
touch part-{a..d}.txt
part-a.txt part-b.txt part-c.txt part-d.txt
3️⃣ Комбинации (картезианское произведение)
echo {dev,staging,prod}-{us,eu,asia}
dev-us staging-us prod-us dev-eu staging-eu prod-eu dev-asia staging-asia prod-asia
4️⃣ Множественные команды
cp config.{yml,json} /etc/myapp/
Скопирует оба файла за раз.
▪️ Фишки для автоматизации
1️⃣ Генерация тестовых данных:
touch user-{001..100}.log
сразу 100 файлов
2️⃣ Быстрое клонирование директорий:
cp -r src{,-backup}
создаст копию src-backup без лишнего ввода.
3️⃣ Комбинации шаблонов:
mv report_{2022..2024}_{01..12}.csv /data/reports/
сразу раскладывание отчётов по месяцам и годам.
BashTex 📱 #bash #utils