• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Endlosschleife auf der Komandozeile

alexandra

Newbie
Ich möchte den Befehl ' du -hs <path>; sleep 10' in der Komandozeile laufen lassen, bis er mit Strg+C manuell abgebrochen wird. Ein Script möchte dafür nicht machen müssen. Der Befehl repeat ist dem Server leider nicht bekannt [9.1].

Danke für jede Hilfe
 

moenk

Administrator
Teammitglied
While dürfte auch Deinen Bedarf abdecken: http://tiger.la.asu.edu/bash_tutorial.htm
 

pingoman

Newbie
Hallo,

anbei eine kleine Lösung für Dich. Ich hoffe ich konnte Dir weiterhelfen? Das Script kannst du wie folgt aufrufen:

./scriptname param1 param2

param1 => Pfad
param2 => eMailadresse wo die Ergebnisse hin gesendet werden sollen.

Code:
#!/bin/bash

# Definitionen
homepath=$1
datum=$(date)

while (true)
do
        for path in $(ls -aIF -A $homepath | sort)
        do
                duget=$(du -Hs "$homepath$path")
                dusage="$dusage $duget\x0a"
        done
        echo -e $dusage | mail -s "Quota fuer $1 vom $datum" $2
        sleep 10
        dusage=""
done

exit (0)


Ich selbst nutze das Script im Produktivbetrieb um Homeverzeichnisse täglich auf Überschreitungen zuprüfen.

Pingoman
 

pingoman

Newbie
Hallo,

habe meine Bezugsquelle zum Thema Bash noch vergessen. Hier schaue ich immer ab und an mal rein. http://www.tldp.org/LDP/abs/html/index.html
 
Oben