Profifrage ;-)

Hallo,

gibt’s ein Kommando, mit dem sich die Dateigröße bestimmen läßt? Ich würde gerne in der .bash_profile nachgucken, ob eine Datei eine bestimmte Größe überschreitet:

if filesize dateiname
then
 mach was vernünftiges
fi

Frage 2: Kann man mit bestimmten Funktionsergebnissen rechnen? Als Beispiel fällt mir die Rückgabe von „grep -c“ ein.

Danke!

Kristian

Hallo,

gibt’s ein Kommando, mit dem sich die Dateigröße bestimmen
läßt?

ls -l $file | cut -c 30-41

wobei du vorher in die Variable $file den Datainamen schreiben solltest. Falls Du das Ergebnis einer Variablen zuweisen moechtest oder es als Parameter einem weiteren Kommando uebergebe willst, dan musst du es noch in ` einschliessen, zum Beispiel:

size=ls -l $file | cut -c 30-41

Frage 2: Kann man mit bestimmten Funktionsergebnissen rechnen?
Als Beispiel fällt mir die Rückgabe von „grep -c“ ein.

Je nach genauer Problemstellung eignen sich die Kommandos bc, dc oder awk zum Rechnen.

Wenn Du zum Beispiel die Groesse von 3 Dateien zusammenrechnen moechtest saehe das so aus:

echo ls -l $file1 $file2 $file3 | cut -c 30-41 + + p | dc

Falls es sich um eine variable Anzahl an Dateien handelt ist die Verwendung von awk besser:

ls -l * | cut -c 30-41 | awk ‚{ x += $1}END{print x;}‘

Rechnungen, die ueber die Grundrechenarten hinausgehen koennen mit bc erledigt werden. Naeheres zu den einzelnen Befehlen liefern die einschlaegigen man-pages.

Joern

Danke!
Wunderbar,

danke Jörn! Mit Deinen Tips kriege ich nun jede Rechnung hin :wink:
Und die man-pages sind ja sonst auch noch da, wie Du richtig sagst. Ich hatte nur das Problem, daß ich nicht wußte, wo ich gucken sollte.

Kristian