Dateigröße ermitteln und vergleichen

D

drm

Eroberer
Ich möchte in einem ksh-Skript prüfen, ob eine existierende Datei die Größe 0 hat (sozusagen leer ist).

Ich stelle mir das vom Pseudocode so vor:
Code:
if dateigröße = 0 dann
Vorgang A
else
Vorgang B
Mein Problem ist, wie komme ich am besten an die Dateigröße heran? Need help!!!
 
hallo!

leere dateien (size = 0) findest du mit

>find / -size 0 ("/" fängt beim root verzeichnes an)

kannst die dann gleich löschen indem du > -ok rm {} \
anhängst (löscht nach rückfrage)

mfg slaughter.j4ck
 
mit du kannst du dir zumindest den gebrauchten Speicherplatz anzeigen lassen
 
Mit der folgenden Zeile kannst Du Dir die Größe einer Datei anzeigen lassen.

Code:
ls -l [Dateiname] | tr -s " " | cut -d " " -f 5
 
einfacher gehts nur noch mit
Code:
du --apparent-size -h deinedatei
 
Mit
Code:
stat -c %s $FILE
bekommst Du die Größe der Datei $FILE in Bytes

... und wenn Dich die genaue Größe der Datei nicht interessiert, sondern Du nur wissen willst, ob sie existiert und eine Größe ungleich 0 hat, dann nimm doch einfach
Code:
if test -s $FILE; then ...; else ...; fi

Siehe Manual-/Info-Pages zu test und stat :)

Gruß, F.
 
Code:
[[ $(du -b "$datei_a" | awk '{print $1}') = $(du -b "$datei_b" | awk '{print $1}') ]] && echo 'Gleichgroß!' || echo 'Nicht gleichgroß!'
 
Super, besten Dank, ihr habt mir damit sehr geholfen :-)
 

Ähnliche Themen

Queue für copy Script

JBidWatcher: Problem bei loading Auctions in Verbindung mit mySQL

Uhrzeit vergleich

NagiosGrapher 1.7.1 funktioniert nicht

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

Zurück
Oben