Eu não tenho um host que eu possa usar e controlar se está ativado ou não, mas isso deve funcionar:
while ! ssh <ip>
do
echo "Trying again..."
done
Ou um script de shell mais explícito:
#!/bin/sh
ssh $1
while test $? -gt 0
do
sleep 5 # highly recommended - if it's in your local network, it can try an awful lot pretty quick...
echo "Trying again..."
ssh $1
done
Salve-o como (digamos) waitforssh.sh
e, em seguida, chame-o com sh waitforssh.sh 192.168.2.38