Il comando du
recupera l'utilizzo del disco di tutti i file nella directory e tutti i sub-directory (ricorsivamente) per impostazione predefinita. Quindi il tempo trascorso da du
si riferisce al numero di file analizzati. Le opzioni -s
o --summarize
e --max-depth
influenzano semplicemente l'output del comando (e non la scansione stessa).
Alcune opzioni du
che limitano la scansione dei file sono --one-file-system, --exclude e --exclude-from.
Se non si desidera recurse nelle sub-dir, è possibile utilizzare invece find, che offre un maggiore controllo sui file da analizzare. Ma non può riassumere l'utilizzo del disco in modo ricorsivo.
find /path/to/dir -maxdepth 1 -printf "%k\t%p\n"
Avviso, che %k
ritornano sempre l'utilizzo del disco in blocchi 1K e l'utilizzo del disco riportato file sparsi potrebbe essere meno o leggermente più grande allora la dimensione del file restituito da %s
del comando ls
. Quindi '% k' si comporta come il comando du
per singoli file.
Se si desidera combinare le funzionalità di find
e du
è possibile combinare entrambi da qualcosa di simile.
find . -maxdepth 1 -name "xyz*" -print0 | du --files0-from=-