Wie kann ich einen Remote-Befehl, der über SSH ausgeführt wird, beenden, wenn SSH beendet wird?

Wie kann ich einen Remote-Befehl, der über SSH ausgeführt wird, beenden, wenn SSH beendet wird?

Ich versuche eine Endlosschleife über SSH laufen zu lassen, zB

ssh remote_server "loop" 

Der Vorgang läuft jedoch loopweiter, wenn ich SSH mit Ctrl+ beende C. Gibt es eine Möglichkeit, loopdie Beendigung zu veranlassen, wenn SSH beendet wird?

Ein Beispiel

Es loopsei die folgende Datei:

#!/bin/bash
while :
do
    sleep 1
done

Vor dem Beenden ps uxfwird Folgendes angezeigt:

tshmak   177639  0.0  0.0 140768  4508 ?        S    10:06   0:00 sshd: tshmak@pts/0
tshmak   177640  0.0  0.0  14548  5220 pts/0    Ss   10:06   0:00  \_ -bash
tshmak   180067  0.0  0.0  29128  3068 pts/0    R+   11:45   0:00      \_ ps uxf

Nach dem Beenden erhalte ich:

tshmak   179490  0.0  0.0  12524  3036 ?        Ss   11:45   0:00 /bin/bash /home/tshmak/scripts/loop
tshmak   187387  0.0  0.0   7288   656 ?        S    11:47   0:00  \_ sleep 1

verwandte Informationen