Nochmal eine kleine Anmerkung zu dem:
Da fehlte nur der Symlink, also war alles OK.
Du willst ernsthaft ein Tool haben, das Ordner als 0Byte zählt aber Links als >0byte. Und warte wie groß sollen die denn sein?
Ist doch Dateisystemabhängig!
Wäre es ein Hardlink gewesen wäre es auf jeden Fall nicht aufgefallen. Die sind nämlich NNetto auf jeden Fall 0 Byte.
Ich hatte Daten von ext3 auf einen USB-Stick (fat16 oder so) kopiert.
Dann sollte dir eigentlich sowohl netto wie Brutto andere Größen herauskommen:
Hintergrund: fat16 Kann lediglich 8.3 => Keine Kleinbuchstaben, keine Sonderzeichen Nicht mehr als 8 Zeichen im Namen...
Die meisten modernen Betriebssysteme Legen deswegen als Hint den richtigen Dateinamen in eine versteckte Datei neben der Originalen mit verfälschtem Namen. Ein Tool, das stumpf die Größe aller Dateien vergleicht (also auch Symlinks mitzählt) sollte entsprechend auch diese Dateien mit zählen. – Und entsprechend deutlich mehr Daten finden.
Andere Sache ist, wenn du wirklich ein DOS-Kompatibles System nimmst (mount -t dosfs oder so.) Dann sind alle deine Dateinamen weg aber der Fehler fällt bei deiner Zählweise nicht auf.
Noch lustiger wird das btw. mit Bildern unter Windows. Da hängt Windows ganz gerne was als Metadatum dran. Die sind dann nach deiner "Netto"-Zählweise keine Daten. Diese sind dann logischerweise 0Byte. Kann dir unter Windows ausdruckbare Bilder machen, die netto 0byte haben aber sich ausdrucken lassen. Kopiert man das dann auf ein FAT funktioniert das nicht. Man kopiert nur die leeren Daten. Die Größe insgesamt ändert sich aber nicht. x-0=x Selbiges gilt auch für wirklich leere Dateien. (Gibt genug Sachen, wo nur der Dateiname relevant ist.)
Da gibt es eine ganze Menge Fallstricke. Es ist einfach eine verdammt dumme Idee. "netto"-Daten zu vergleichen. Nimm rsync! Das läuft überall.