Shellscript so starten das es weiterlaeuft?

Diskutiere Shellscript so starten das es weiterlaeuft? im Linux Forum im Bereich Weitere Betriebssysteme; Moin irgendwie stehe ich gerade auf dem Schlauch. Ich starte auf einer Shell ein SH Script also eine .sh Datei. Wenn ich nun Puty beende wird...

fremdisny

Threadstarter
Dabei seit
10.12.2002
Beiträge
233
Moin

irgendwie stehe ich gerade auf dem Schlauch. Ich starte auf einer Shell ein SH Script also eine .sh Datei. Wenn ich nun Puty beende wird auch das Script beendet.

Wie starte ich eine sh so dass sie auch beim beenden von Puty weiterlaeuft?? Irgendwie stehe ich da grad da wie bestellt und net abgeholt.


Uli
 

HaraldL

Dabei seit
26.07.2006
Beiträge
5.949
Ort
Niederbayern
Du kannst jedes Kommando durch anhängen von " &" im Hintergrund laufen lassen. Dazu evtl. noch die Bildschirmausgabe in eine Datei umlenken damit man später kontrollieren kann ob ein Fehler aufgetreten ist. Beispiel:

cp -a /ordner1 /ordner2 >/var/log/cpscript.log 2>&1 &

Also das ">xxx" schreibt normale Ausgaben in die angegebene Datei, die feste Formel "2>&1" schreibt Fehlermeldungen (die 2 ist der Kanal dafür) in die selbe Datei (&1) und das zusätzliche "&" dahinter startet den Script im Hintergrund. Du bekommst sofort wieder den Eingabeprompt, kannst also ein anderes Kommando eingeben oder dich abmelden während der Script noch läuft. Ich habe im Beispiel den Kopierbefehl cp benutzt, genauso gut geht es aber auch mit Shellscripts.
 

automatthias

vernunftgeplagt
Dabei seit
21.04.2006
Beiträge
10.537
Du musst das Kommando "nohup" verwenden.
Nähere Infos per man/info
 

DiableNoir

Dabei seit
18.01.2004
Beiträge
6.069
Jep, das geht nur so. Ich weiß nicht ob das mit dem & überhaupt funktioniert. Die Shell ist ja immer noch der Vaterprozess des Scriptinterpreters. Wenn man jetzt Putty zumacht, wird auch die Instanz der Shell beendet. Also entweder entsteht dadurch ein Zombie-Prozess, oder er wird wie jedes andere Script abgeschossen. (Tippe eher auf Zweiteres)
 

jdr_85

Dabei seit
23.10.2005
Beiträge
1.665
Alter
35
Ich weiß ja nicht, was das auf der Gegenseite für ein Rechner ist, aber screen ist in dem Fall sehr nützlich. Guck doch einfach mal, ob es installiert ist und wenn ja, schau dir die manpages an ;).
Wenn es jetzt ein Router ist, der nur eine einfache busybox hat, kann man das natürlich vergessen :(.
 

HaraldL

Dabei seit
26.07.2006
Beiträge
5.949
Ort
Niederbayern
Ich weiß nicht ob das mit dem & überhaupt funktioniert.
Doch, hundertprozentig, benutze ich seit Jahren mit diversen OpenSuse-Versionen. Ich habe auf etlichen Servern Backup-Scripts wo ich mich kurz per SSH einlogge, den Script mit "&" starte und gleich wieder auslogge. Anhand der Logdatei des Scripts sehe ich später auch daß der mehrere Stunden lief und korrekt beendet wurde, nicht schon beim Ausloggen.

Also entweder entsteht dadurch ein Zombie-Prozess, oder er wird wie jedes andere Script abgeschossen. (Tippe eher auf Zweiteres)
Nein, wenn der Script lange genug oder sogar endlos läuft und man sich später wieder einloggt während er noch läuft ist der Script in der Baumstruktur von "pstree" eine Stufe höher eingehängt, läuft dann also parallel zur (neuen) Shell.
 

DiableNoir

Dabei seit
18.01.2004
Beiträge
6.069
@HaraldL: Oha...naja, gut zu wissen. :blush ...hoffentlich ist das nicht nur beschränkt auf OpenSuse sondern ein generelles Feature der Bash...werde es mal am Wochenende selbst unter Debian ausprobieren. THX. ;)
 

stpe

Dabei seit
14.11.2001
Beiträge
2.729
Der Sinn von nohup ist es, den aufgerufenen Prozess nicht an die Shell, sondern an init zu hängen. Die Konsole kann dann einfach zugemacht werden.

Eine weitere Variante ist das Tool screen. Dieses erlaubt, innerhalb einer Shell weitere aufzurufen, zwischen diesen zu wechseln oder diese im Hintergrund weiterlaufen zu lassen.
 
Thema:

Shellscript so starten das es weiterlaeuft?

Shellscript so starten das es weiterlaeuft? - Ähnliche Themen

Nach automatischem Windows 10 Update kann ich mein Administrator Konto nicht mehr öffnen - wird nich: Hallo Ich bin total frustriert und verzweifelt. Heute am ersten Tag des neuen Jahres, macht mein PC beim Aufstarten automatisch ein Windows 10...
Windows Funktionsupdate macht Partition platt: Am Mittwochabend benachrichtigte mich Windows darüber, dass er ein Funktionsupdate durchführen wolle, dass etwas länger als gewöhnliche Updates...
simples cmd an und abmeldescript: Hallo zusammen, ich bastel mir grad ein script zusammen und steh grad voll auf dem Schlauch. Ich möchte folgendes. Der User soll sich beim...
copy im netzwerk: Hallo, Ich habe in der Firma folgende Problemstellung: Die Datenbank einer Maschine (Win98) soll auf sämtlichen Netzwerkarbeitsplätzen verfügbar...
WIKI - Windows 8 Befehle für die Eingabeaufforderung: Daniel Erler: Die Seite wurde neu angelegt == Um bei Windows 8 die meisten Einstellungen vorzunehmen, reicht in der Regel die grafische...

Sucheingaben

enigma nohup

,

linux shell script macht nicht weiter nach browser aufruf

,

linux sh skript im hintergrund starten

,
linux shell programm im hintergrund starten
, bash hintergrundprozess, linux script startet script mit &, linux shell script hintergrund, ubuntu script im hintergrund starten, auf windows shell scripts laufenlasen, linux bash hintergrund starten, shell script in den hintergrund schicken, linux shell script im hintergrund starten, shell skript hintergrund, ubuntu bash script im hintergrundstarten, perl programm im hintergrund starten, bash script im hintergrund
Oben