Wie kann ich ein Shell Script im Hintergrund laufen lassen?

... komplette Frage anzeigen

3 Antworten

In der Praxis ist das ganze background- und foreground-Gemache eher semi-geil.

Schau dir mal screen (simpler, kleines feature-set) oder tmux (komplexer, grosses feature-set) an.

Damit laeuft dein Skript auch im "Hintergrund", aber du verlierst dein interaktives Terminal nicht.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von guenterhalt
18.11.2016, 14:56

in Verbindung mit der vorhergehenden Frage von @devmi macht screen überhaupt keinen Sinn, dann für diese Aufgabe benötigt er kein Terminal. 

0

a) im Terminal mit einem & am Ende des Befehls ( ein Script-Name + Parameter wird auch wie ein Befehl behandelt)

b) durch Aufruf (auch wieder mit dem & ) aus einem "Autostart-Programm" oder durch Aufruf in einem Run-Level-Script oder durch einen Cron-Job ....

Bei einem Cron-Job oder anderen Programmen muss man aber etwas machen, dass entweder bereits laufende gleiche Programme beendet werden oder aber dass das Programm selbst erkennt "ich laufe schon" und dann keine weitere Instanz startet.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von PWolff
18.11.2016, 13:45

Muss? Was soll an "Fork-Bomben" so schlimm sein? Wer braucht schon ein reagierendes System?

#!/bin/sh
$0 &
$0 &
0

Was möchtest Du wissen?