Skip to content

Instantly share code, notes, and snippets.

@JasonkayZK
Created July 21, 2025 02:18
Show Gist options
  • Save JasonkayZK/e8bbe840d4b4d9d0ed15d4385e1c0a07 to your computer and use it in GitHub Desktop.
Save JasonkayZK/e8bbe840d4b4d9d0ed15d4385e1c0a07 to your computer and use it in GitHub Desktop.
Call command between multiple servers.
#!/bin/bash
# Dependency: password-less SSH login
#
# Define server array (easily extensible)
servers=(
"server-1"
"server-2"
"server-3"
)
# Check if command arguments are provided
if [ $# -eq 0 ]; then
echo "Error: Please provide a command to execute" >&2
exit 1
fi
# Execute command across all servers
for server in "${servers[@]}"; do
echo "--------- $server ----------"
# Execute remote command and handle errors
if ssh "$server" "$*"; then
echo "✓ Command executed successfully"
else
echo "✗ Command failed on server: $server" >&2
# Uncomment below line to exit script on first failure
# exit 1
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment