Hallo, Am Sat, 11 Mar 2006, Al Bogner schrieb:
Ich will ein Script erstellen, dass mit Bonnie++ die HD testet. Dazu muss ich die Partition pro Festplatte finden, die am meisten freien Platz hat. In der Regel wird das nicht /tmp sein. Es geht aber nicht nur darum die Partition zu finden, die am meisten Platz hat, sondern auch lokal ist, eine Linux-Partition ist und beschreibbar ist.
Ausgangspunkt wird also df sein, aber wie geht es dann weiter? Wie sortiere und filtere ich?
Testweise habe ich mal so angefangen, nur /tmp ist eben zu ersetzen. SCRATCHDIR="/tmp" SCRATCHFREI=`df -P "$SCRATCHDIR" | awk '/^([0-9.]+:)?\//{print $4;}'`
Ich weiss nicht so recht was du machen willst, aber vielleicht hilft dir: gawk 'BEGIN { while( "df -T" | getline) { if(/ext|reiser|xfs|jfs/) { a[$7]=$5; if($5 > max) { idx = $7; max=$5; } } } print max" KB free ("a[idx]") on "idx; }' wobei du die Ausgabe auf deine Beduerfnisse anpassen musst. Das 'df -T' habe ich mit ins awk reingepackt, weil du vermutlich noch mehr machen willst (und mit den Ergebnissen weiterrechnen) und dann kann man das wohl auch in awk erledigen... Statt Ausgabe eben direkt weitermachen... HTH, -dnh -- Das ist die "Geiz ist Geil"-Generation, gespart wird vor allem am Verstand. Ich sehe das doch jeden Tag auf andere Bereiche des Lebens bezogen. Der größte Teil der Menschen will betrogen, belogen und abgzockt werden es muß alles schön bunt sein sonst funktioniert alles nicht. -- T. A. Bätzig in suse-linux