2017-12-17 4 views
1

Ich versuche, einige Befehle auf einigen Remote-Hosts auszuführen. Ich habe die Liste ihrer ips in einer Datei ips.txt (ein IP pro Zeile).SSH in Bash-Skript beendet Schleife

#!/bin/bash 

while IFS= read -r wip; do 
    echo $wip 
    ssh [email protected]$wip "pkill pgm; cd /root/pgm; nohup ./pgm > /dev/null 2>&1 &" 
    echo "$wip end" 
done < ips.txt 

Ich führe das obige Skript. Aber das Problem ist nach dem Lesen der ersten IP die Schleife beendet. Aber wenn ich die ssh-Linie entferne, druckt es alle IPS.

+1

https://unix.stackexchange.com/questions/107800/using-while-loop-to -ssh-zu-mehreren-Servern – Pavel

Antwort

2

ssh liest alles von stdin (ips.txt).

ersetzen

ssh 

mit

ssh -n 

See: man ssh

Verwandte Themen