Se vuoi solo un limite superiore (approssimazione):
Digitare fsutil fsinfo ntfsinfo C: nel prompt dei comandi, leggere il Mft Valid Data Length valore e dividerlo per 1024. Questo numero potrebbe essere troppo grande, ma non può essere troppo piccolo.
Se hai bisogno di un valore esatto, ci sono modi più veloci ma devi programmare qualcosa (non conosco nessun programma là fuori che lo faccia esattamente) ... dovresti leggere il file $ MFT e analizzare a mano, quindi capire quali sono le voci del file e quali sono voci non file ... è drammaticamente più veloce dell'approccio "top-down" di Windows (perché la costruzione della gerarchia bottom-up usa solo la MFT e nient'altro) , ma non è per niente facile.
Se sei un programmatore ma vuoi un modo meno doloroso (anche se più lento), puoi anche solo scrivere un programma che chiama NtQueryDirectoryFile per attraversare le cartelle invece del valore predefinito FindFirstFile / FindNextFile funzioni ... può essere molto più veloce ma un po 'più complicato.
Basta essere consapevoli che la nozione di "file" stesso è in realtà abbastanza complicata. È abbastanza possibile (e Windows lo fa anche di default) avere più collegamenti fissi allo stesso file, ed entrambi sono altrettanto "reali" di qualsiasi altro file ... li contate una o due volte?
Oppure puoi avere giunzioni o collegamenti simbolici che puntano ad altri luoghi ... dovrebbero essere contati o no?
Non è un processo chiaro come potrebbe sembrare all'inizio, quindi sii consapevole di ciò.
Spero che questo abbia aiutato
modificare
Potresti correre
robocopy /L /E C:\ C:\Temp > "%Temp%\Temp.log"
e poi ispezionare la statistica "Files" che viene mostrata. : P