Schleife

Post Reply
Message
Author
Michael

Schleife

#1 Post by Michael »

Hallo zusammen,

kann mir jemand sagen, wie ich unter Linux eine Schleife in einem "xterm" laufen lassen kann?

Also unter Unix mache ich dies mit:
while 1
clear
ps -ef
sleep 10
end

Das soll nur mal ein Beispiel sein, um alle 10 Sekunden den Befehl ps -ef auszuführen.
Unter Linux erhalte ich die Meldung:

bash: syntax error: unexpected end of file

Außerdem beende ich die Eingabe unter Unix mit "end" bei Linux zeigt dies keine Wirkung und ich beende mit STRG und D,
danach die Meldung oben.

Grüße
Michael

Christian

Re: Schleife

#2 Post by Christian »

Hallo,

unter Linux sollte es mit

while true
do

"Befehle"

done


Funktionieren


Gruss Christian

Jochen

Re: Schleife

#3 Post by Jochen »

Du scheinst eine andere Shell zu benutzen. Ich kenne sh, bash und ksh recht gut; keine von denen hat die o.a. Syntax. Mach mal ein "ps", dann kannst Du Deine Shell sehen. Vielleicht ist es eine csh oder davon abgeleitet, dann kannst DU unter Linux die tcsh einsetzen, um eine möglichst ähnliche Umgebung wie gewohnt zu erhalten.

Jochen

slackware

Re: Schleife

#4 Post by slackware »

hallo,
schonmal mit:
watch -n 1 "befehl"
zb.:
watch -n 1 who
versucht?

slack

Michael

Re: Schleife

#5 Post by Michael »

Hallo zusammen,

ich teste die Sache mal.
Nur damit es deutlicher wird, eine Schleife in einem Script funktioniert.
Die Befehle die ich jetzt eingegeben habe, hatte ich in einem xterm-Fenster der Reihe nach eingegeben (Unter UNIX) und danach die Eingabe mit "end" abgeschlossen.

Nach eine Wartezeit von X-Sekunden wurde dann immer der eingegebene Befehl (ps -ef) ausgeführt.
Ich setzte übrigens die "bash" ein.
Abbrechen konnte man das ganze dann mit STRG + C.


Grüße
Michael

Michael

Re: Schleife

#6 Post by Michael »

Hallo zusammen und meinen Dank!!

Die Sache läuft. War ja gar nicht so schwer, man muß aber erst mal drauf kommen.
UNIX und Linux sind halt doch ein wenig verschieden.

Hier auch noch einmal die Reihenfolge die zum Erfolg führte.

while true
do
clear
ps -ef
sleep 5
done

Das ganze ist nur ein Beispiel hier. Möchte die Sache mit anderen Kommandos ausführen lassen.

Grüße und ein schönen Sonntag noch . . . .
Michael

Post Reply