ℹ️ Один из недооцененных инструментов Bash — это возможность эффективно распараллеливать выполнение задач. Это особенно полезно при запуске множества однотипных операций, которые могут выполняться одновременно, например, запросы к API, загрузка файлов или запуск контейнеров.
🔥 Пример распараллеливания в Bash:
Вместо того, чтобы запускать команды последовательно, можно выполнять их параллельно, чтобы сэкономить время. Для этого часто используют комбинацию функций и команд &, wait или более продвинутые подходы с xargs.
#!/bin/bash
# Массив команд или задач
tasks=("команда1" "команда2" "команда3" "команда4")
# Запуск всех задач параллельно
for task in "${tasks[@]}"; do
$task & # запуск в фоновом режиме
done
# Ожидание завершения всех процессов
waitℹ️ Каждая команда в этом примере запускается параллельно, а wait гарантирует, что скрипт не завершится, пока все процессы не закончатся.
⚡️ Оптимизация с помощью xargs:
Если вам нужно передать список команд в параллельное выполнение, то использование xargs с флагом -P (количество параллельных процессов) значительно упростит задачу.
# Например, 5 параллельных скачиваний файлов
cat urls.txt | xargs -n 1 -P 5 wgetℹ️ Этот код запускает 5 процессов wget одновременно, загружая файлы из списка urls.txt. Это может сильно ускорить процесс по сравнению с последовательной загрузкой.
✳️ Этот трюк поможет ускорить автоматизацию и более эффективно использовать ресурсы машины при выполнении однотипных задач.
tags: #полезно #linux #bash
🧭 @recura_tech



