Gibt es eine POSIX-Funktion, die mir die Größe eines Verzeichnisses (einschließlich aller Unterordner) gibt, ungefähr gleichbedeutend mit " du -s somepath
"?
NAME
ftw
,nftw
- Dateibaum gehenBESCHREIBUNG
ftw()
durchläuft den Verzeichnisbaum Das befindet sich unter dem Verzeichnis dirpath und ruftfn()
einmal für jeden auf Eintrag im Baum. Standardmäßig, Verzeichnisse werden vor dem Dateien und Unterverzeichnisse, die sie enthalten (Durchlauf vorbestellen).NACH
POSIX.1-2001, SVr4, SUSv1.
Es gibt keine vorgefertigte Funktion, Sie müssen also Ihre eigenen erstellen. Sie können sich den Quellcode der GNU-Implementierung von du als Beispiel anschauen (siehe Ссылка ) für eine Liste von Orten zum Herunterladen von). Es befindet sich im Paket coreutils
.
Die entscheidenden Posix-Aufrufe sind wahrscheinlich opendir
, readdir
, closedir
und stat
.