[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ssh und maximale Laufzeit definieren
[Thread Prev] | [Thread Next]
- Subject: Re: ssh und maximale Laufzeit definieren
- From: Markus Hochholdinger <Markus@xxxxxxxxxxxxxxxxx>
- Date: Tue, 21 Oct 2008 13:17:01 +0200
- To: uugrn@xxxxxxxxxxxxxxx
Hi Michael, Am Samstag, 18. Oktober 2008 04:11 schrieb Michael Lestinsky: > Am 17.10.2008 schrieb Markus Hochholdinger: > > Jetzt frage ich mich (google wusste (noch) keine Antwort) ob es ein > > Programm in der Form wie z.B. time oder nice gibt, welchem man eine > > maximale Laufzeit fuer ein auszufuehrendes Programm mitgeben kann. > > Wunschvorstellung waere: maxruntime -n 120 ssh .. .. .. > Das laesst sich doch mit ein paar kleinen Zeilen C schnell loesen. Als > kleine Hausaufgabe kannst du ja dieses Codefragment vervollstaendigen: vielen Dank. Allerdings hatte ich gehofft dass es soetwas schon fertig und erprobt gibt. Vorallem die Umleitungen von stdin/stdout und stderr muss man ja auch beachten und dass ssh auch wirklich beendet wird. Da ich in C nicht so viel mache wie in der Shell und da diese Aufgabe nicht performant sein muss habe ich es mit einer bash-Funktion geloest: ----------8<--------------------------------------- ssh-Deadline() { # default deadline in seconds SSHDEADLINE="${SSHDEADLINE:-30}" # start ssh ssh $SSHOPTIONS "$@" & # remember pid local PID="$!" # loop till deadline is reached for SSHCOUNTDOWN in $(seq 1 "$SSHDEADLINE") do # check if ssh is finished if [ ! -d "/proc/$PID" ] then # get exit status from ssh wait "$PID" # return this function with exit status from ssh return fi # wait one second sleep 1 done # if ssh is still running, try to kill it test -d "/proc/$PID" && (kill "$PID"; sleep 1) # if ssh is still running, try to kill -9 it test -d "/proc/$PID" && (kill -9 "$PID") # return this function with exit status from ssh wait "$PID" } ---------->8--------------------------------------- Trotzdem Danke fuer Deinen C-Code. -- Gruss \|/ eMHa (o o) ------------------------------------------------------oOO--U--OOo-- Markus Hochholdinger e-mail mailto:Markus@xxxxxxxxxxxxxxxxx .oooO www http://www.hochholdinger.net ( ) Oooo. ------------------------------------------------------\ (----( )- \_) ) / (_/ -- http://mailman.uugrn.org/mailman/listinfo/uugrn Wiki: http://wiki.uugrn.org/wiki/UUGRN:Mailingliste Archiv: http://lists.uugrn.org/