TGViewer
BashMaster BashMaster @bash_help · 8.84K subscribers
Post #1280 1.97K
⚙️ Одновременный запуск команд на нескольких хостах

✔️Иногда нужно быстро выполнить одну и ту же команду на нескольких серверах. Удобные тулзы для этого есть (например, pssh, ansible), но что если хочется сделать это в чистом bash, без сторонних зависимостей?

➡️ Попробуем реализовать, основная идея такова:
💠список хостов хранится в текстовом файле;
💠скрипт пробегает по ним циклом и запускает команду через ssh;
💠чтобы все шло параллельно - используем background (&) и ограничитель числа потоков.

➡️ Пример скрипта:

#!/bin/bash
# parallel-ssh.sh
# Одновременное выполнение команд на хостах

HOSTFILE="hosts.txt"
CMD="$*"
MAX_PARALLEL=5 # ограничение параллельных подключений

if [[ -z "$CMD" ]]; then
echo "Использование: $0 'команда для выполнения'"
exit 1
fi

sem=0
while read -r host; do
[[ -z "$host" || "$host" =~ ^# ]] && continue

{
echo ">>> [$host]"
ssh -o BatchMode=yes -o ConnectTimeout=5 "$host" "$CMD" 2>&1 | sed "s/^/[$host] /"
} &

((sem++))
if (( sem >= MAX_PARALLEL )); then
wait -n
((sem--))
fi
done < "$HOSTFILE"

wait


➡️ Пример hosts.txt:

server1
192.168.1.12
192.168.1.15


➡️ Запуск:

./parallel-ssh.sh "uptime"


▶️Вывод будет помечен [host], чтобы не путались строки.

🖼️ Ссылка на источник

🔨 bash_help
  • 👍 13
  • ✍ 4
  • 🔥 3
  • 😐 2
More from @bash_help
  1. Oct 18, 2026АЙТИШНИКИ БЕСПЛАТНОЕ ОБУЧЕНИЕ Проект «Terminal» стал крупнейшей библиотекой бесплатного об…
  2. Oct 15, 2026⚙️ IxeRam ✔️Высокопроизводительный терминал-ориентированный сканер памяти и отладчик для L…
  3. Oct 15, 2026👩‍💻 Всем программистам посвящается! Вот 14 авторских обучающих IT каналов по самым востр…
  4. Oct 14, 2026⚙️ bash-agent ✔️Минималистичная среда выполнения для AI-агента, которая написана на чистом…
  5. Oct 11, 2026⚙️ PortPal ✔️Нативный десктопный монитор портов, который помогает быстро понять, какие про…
  6. Oct 11, 2026👀Ты давно мечтал обучиться этичному хакингу? ⚠️Мы нашли для тебя ЛУЧШЕЕ ПРЕДЛОЖЕНИЕ на ры…
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 →