View Single Post
Old 25-05-2009, 21:38   #10
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Leggo solo ora la discussione. Anche se hai già risolto ti propongo una soluzione alternativa che fa uso della powershell.

La puoi scaricare a questo indirizzo

http://www.microsoft.com/windowsserv.../download.mspx

prima di procedere alla sua installazione, nel caso non lo abbia già, devi anche scaricare il framework .NET 2.0 affinchè funzioni

http://www.microsoft.com/downloads/d...d-aab15c5e04f5

Una volta installata la richiami digitando powershell da esegui.

Per risolvere il tuo problema userei questo comando:

Codice:
gci c:,f: -recurse | ? {-not $_.psiscontainer} | Sort-Object length -desc | Select-Object name,length,@{name='Percorso'; Expression={split-Path $_.fullname} } | export-Csv "c:\elenco.csv" -notypeinformation -encoding "utf8"
Te lo spiego brevemente: gci è l'abbraviazione di get-childitem ed è l'equivalente del vecchio dir. Nel mio esempio verifico i file nelle unità c ed f. Lo switch -recurse serve per ciclare le unità in maniera ricorsiva. Il punto di domanda è la forma contratta del where e tramite {-not $_.psiscontainer} specifichi che vuoi cercare solo i file e non le cartelle. Tramite sort ordini per dimensione in ordine decrescente. A questo punto recuperi di tali file il nome, la dimensione e con il comando split-path il percorso completo escludendo il nome del file stesso. Infine reindirizzi quanto ottenuto su un file csv tramite l'apposito comando.

P.S. Nel caso voglia avere la dimensione espressa in mega sostituisci il length della select con

@{name='Dimensione'; Expression={$_.length/1MB}}

mentre se vuoi che vengano elencati anche i file nascosti e di sistema, aggiungi al comando gci oltre allo switch -recurse anche lo switch -force.

Come ultima cosa, visto che può risultare scomodo scrivere degli script tramite shell, ti consiglio di scaricarti l'editor powershell analyzer

http://www.powershellanalyzer.com/

che non necessita nemmeno di installazione e che semplifica notevolmente il lavoro.
john_revelator è offline   Rispondi citando il messaggio o parte di esso