Shell Skript mit Endlosschleife

Neue Frage »

Auf diesen Beitrag antworten »
RoseHeart Shell Skript mit Endlosschleife

Hallo,
ich möchte gerne ein Shell Skript erstellen und zwar soll das Skript in einer Endlosschleife 2 Minuten warten, dann aufwachen, den Befehl top aufrufen und dessen Ausgabe an eine Datei „system_load_log“ anhängen.
Und zusätzlich nach jeder Ausgabe durch eine Zeile mit „*********“ trennen.

Dabei bräuchte ich etwas Hilfe, das Skript richtig und vollständig zu schreiben.
Mein Anatz:

code:
1:
2:
3:
4:
5:
6:
7:
#!/bin/bash
while [ true ]
 do
  sleep 180 #2 Minuten warten 
    echo "top -n1 -b"
done


Mir fehlt das mit dem "***" trennen ganz.

Danke im Voraus!
 
Auf diesen Beitrag antworten »
eulerscheZahl

2 Minuten sind 120 Sekunden, nur so nebenbei.
code:
1:
2:
3:
4:
5:
6:
while [ true ]
do
	sleep 120 #2 Minuten warten 
	top -n1 -b
	echo "*****"
done
Auf diesen Beitrag antworten »
RoseHeart

Wie peinlich großes Grinsen
Natürlich meinte ich 120 Sekunden, weiß auch nicht warum ich 60 x 3 gemacht habe.

Vielen dank für deine Hilfe.
Auf diesen Beitrag antworten »
RoseHeart

Wie mach ich, damit die Ausgabe an einer Datei angehängt wird?
So etwa?

code:
1:
2:
3:
4:
5:
6:
while [ true ]
do
   sleep 120 #2 Minuten warten 
   top -n1 -b >> system_load_log
   echo "*****"
done


Ist dieser Code richtig, wenn ich nur die ersten 10 Zeilen der Ausgabe von top an die Datei anhängen will?

code:
1:
2:
3:
4:
5:
6:
while [ true ]
do
   sleep 120 #2 Minuten warten 
   top -n1 -b; head>> system_load_log
   echo "*****"
done
 
Auf diesen Beitrag antworten »
eulerscheZahl

code:
1:
2:
3:
4:
5:
6:
while [ true ]
do
   sleep 120 #2 Minuten warten 
   top -n1 -b | head >> system_load_log
   echo "*****" >> system_load_log
done

Wenn du die Ausgabe des einen Programms mit dem nächsten weiterverarbeiten willst, musst du sie mit | zusammenfügen.
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »