Ich habe den folgenden Code, der überprüft, ob ein Skript (namens my_script.sh
) ausgeführt wird:Überprüfen Sie, ob Remote-Prozess läuft (Linux)
ps cax | grep my_script.sh > /dev/null
if [ $? -eq 0 ]
then
echo "Process is running."
else
echo "Process is not running."
fi
Allerdings würde Ich mag, dies zu ändern, wenn das überprüfen Der Prozess läuft auf einer anderen Maschine, ohne direkt mit ssh zu arbeiten, da dies mich aus dem aktuellen Skript herausbringt, wenn ich es in einer Schleife laufen lasse.
Im Wesentlichen würde Ich mag, dies zu tun:
ssh otherMachine
ps cax | grep my_script.sh > /dev/null
if [ $? -eq 0 ]
then
echo "Process is running."
else
echo "Process is not running."
fi
ssh originalMachine
Jede Hilfe würde geschätzt. Vielen Dank!
Kopieren Sie das Skript zum 'otherMachine' und führen Sie es als' ssh Othermachine check_script.sh' – Jakuje
@Jakuje Ich mag würde das Skript halten auf 'originalMachine' da der eventuelle Plan Um zusätzliche Skripte auf 'originalMachine' auszuführen, läuft der Prozess nicht auf' otherMachine'. – CdSdw
Was meinst du genau mit "das bricht mich aus dem aktuellen Skript, wenn ich es in einer Schleife laufen lasse"? Meinst du die Remote-SSH-Verbindung endet nicht? – nephtes