Linux "sleep 60" im Hintergrund ausführen?
Geben Sie das Kommando „sleep 60“ so ein, dass es zunächst im Hintergrund ausgeführt wird. Holen Sie dann den Hintergrundjob wieder in den Vordergrund.
Geben Sie das Kommando „sleep 60“ so ein, dass es im Hintergrund ausgeführt wird und brechen Sie den Hintergrundjob dann ab.
Mein Problem ist das ich nicht weis wie ich den Befehl im Hintergrund ausführen soll und ihn dann in den Vordergrund holen soll ?
Danke
2 Antworten
technisch gesehen macht es keinen Sinn , sleep im Hintergrund auszuführen. Hier geht es offensichtlich nur darum Prozesse im Hintergrund auszuführen und wieder in den Vordergrund zu holen.
Hänge an den Befehl starte einfach
sleep 60 &
Obwohl hier jemand schlafen soll, kann man weiter im Terminal Befehle eingeben, die auch ausgeführt werden. Von sleep merkt man gar nichts.Um den Hintergrundprozess wieder in den Vordergrund zu holen reicht der Befehl
fg
Ob im Hinter- oder Vordergrund, der Prozess "sleep" bleibt "Kind" des Terminals, in der er gestartet wurde. Wird das Terminal gekillt, dann passiert das auch mit sleep ( wenn man unter der Minute bleibt).
nur nohup löst das und nohup.out dient dann als "Auffänger" aller Ausgaben des damit gestarteten Programms. Da sleep nichts ausgibt, bleibt auch nohup.out leer.
Hänge ein "&" hinter deinen Command.
Mit "fg" holst du den letzten Process wieder in den Vordergrund.
Natürlich wird diese von nohub erstellt, mit irgendwas müssen ja die Standardfiledeskriptoren verknüpft sein, wenn der Prozess kein Terminal hat.
Geben Sie das Kommando „sleep 60“ so ein, dass es selbst dann im Hintergrund weiter ausgeführt wird, wenn sie die shell schließen aus der Sie das sleep-Kommando gestartet haben.
nohup sleep 60 &
Ich habe versucht aber es wurde eine datei "nohub.out" erstellt.
kannst du mir da auch weiterhelfen ?
Danke