script mit endung .sh&!!!

N

noob222

Mitglied
hallo,

habe einige Scripte (die ich nicht geschrieben habe sondern nur anwenden muss) welche Server hoch- und runterfahren. Ein bestimmter Server hat die Endung .sh in seinem jeweiligen Verzeichnis um den Server hoch- und runter zufahren (wie z.B. /home/server/bin/server3stopp.sh und /home/server/bi8n/server3start.sh).
Jetzt gibt es noch zusätzliche Befhele (Alias) wie z.b. serverstarten und serverstoppen.
Mit dem Befehl serverstarten werden alle benötigten 3 Server direkt gestartet, damit nicht alles per Hand 3 mal ausgeführt werden muss.
Mit dem Befehl serverstoppen werden alle 3 Server gestoppt.
Diese Kurzbefehle dienen dazu, die Server, falls sie Probleme bereiten per Hand direkt auf der Konsole zu starten oder beenden.
Da ich nicht weiss wie man in einem Script ein Alias verwendet, muss ich alle 3 Scripte hintereinander einzeln ausführen.
Hier ein Beispiel:
Code:
PATH=....
DATE=...
... so geht mein Script weiter bis

#Die Prozesse gestoppt werden sollen (was auch klappt) 
/home/ein/anderes/server/serverstoppen ssl
/home/wieder/ein/anderes/server/serverstoppen ssl
/home/server/bin/server3stopp.sh
...
... Programm-Code geht weiter bis

#Die Prozesse weider gestartet werden sollen
/home/server/bin/server3start.sh    ->>>> klappt nicht Programm-Code wird nicht weiterausgeführt
/home/wieder/ein/anderes/server/serverstart ssl
/home/ein/anderes/server/serverstart ssl

Das beenden der Prozesse ist kein Problem. Im Alias serverstopp sind diese auch in dieser reihenfolge angeordnet.
Bei dem Alias serverstart steht aber jetzt:
Code:
/home/server/bin/server3start.sh[COLOR="Red"]&[/COLOR];/home/wieder/ein/anderes/server/serverstart ssl;/home/ein/anderes/server/serverstart ssl
Was dieses "&" ausmacht ist mir nicht klar, weil wenn ich diesen Alias in der Konsole eingebe klappt es ja.

Kann ich ein Alias in einem Script ausführen?

Hoffe das es jetzt verständlicher geworden ist :-)

vielan dank

PS: ich verwende die CSH-Shell
 
Zuletzt bearbeitet:
Äh, also dein Post ist recht wirr, und ich hab keine Ahnung was du meinst.

Mit dem Befehl serverstoppen werden 3 Server gestoppt, 2 mit der Endung .sh und eins (zB Test3stopp.sh&) mit der Endung .sh&

Das script __heisst__ "meinscript.sh&" oder wie?

Was bedeutet dieses & zusätzlich?

= Lasse Prozeß im Hintergrund laufen

Aber wie schon gesagt, bei deinem Posting kann ich auch nur Rätselraten spielen, ich würde das nochmal reformulieren.
 
hi,

würde mich freuen, wenn mir einer nur sagen könnte was der Unterschied zwischen der Endung (eines Scripts) .sh zu .sh& ist!

Wenn ich mein Script mit der Endung .sh aufrufe klappt es nicht. Wenn ich ich jedoch mit .sh& aufrufe klappt es wunderbar. Aber warum?

Ich kenne dieses "&" nur, wenn man über der Konsole ein Programm öffnen will, wie z.b. gedit&, dann wir das Schreibprogramm gedit geöffnet.

danke
 
& ist unter UNIX / Linux der befehl und Programmme im Hintergrund zustarten ....
 
würde mich freuen, wenn mir einer nur sagen könnte was der Unterschied zwischen der Endung (eines Scripts) .sh zu .sh& ist!

Die Antwort hatte ich dir bereits gegeben?!

= Lasse Prozeß im Hintergrund laufen

Wenn du das script ohne "&" aufrufst, läuft es __nicht__ im Hintergrund, und blockiert demzufolge alle nachfolgenden Script-Aufrufe.
 
vielen dank,


ich wusste nicht das du mit "=" auf meine Frage geantwortet hast :-) sonst hätte ich die frage nicht gestellt.
sorry
und danke

mfg
 

Ähnliche Themen

Skript soll nicht doppelt laufen... kill pkill pid cron

Queue für copy Script

Windows clients können nicht mehr auf lange laufendes System zugreifen

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

CentOS 6.3 RADIUS - Keine Verbindung möglich

Zurück
Oben