Come ottenere le dimensioni della cartella utilizzando PowerShell in Windows 11/10
In genere, su un PC basato su Windows, è possibile verificare le dimensioni di un elemento o di una cartella semplicemente facendo clic con il pulsante destro del mouse sull’elemento o sulla cartella e quindi selezionando Proprietà dal menu di scelta rapida. In questo post, ti mostreremo come controllare o ottenere le dimensioni della cartella utilizzando PowerShell in Windows 11/10.
Un caso d’uso in cui potresti voler usare PowerShell invece del modo convenzionale per ottenere una cartella sarebbe se la dimensione dell’elemento o della cartella è significativamente maggiore, ad esempio maggiore di 100 GB. In questo caso, l’utilizzo del modo convenzionale può richiedere del tempo prima che la finestra Proprietà della cartella completi le dimensioni dell’elemento, inoltre, ciò che viene mostrato potrebbe non essere la dimensione effettiva della cartella.
Come ottenere le dimensioni della cartella utilizzando PowerShell in Windows 11/10
Per un motivo o per l’altro, potresti aver bisogno delle dimensioni di una cartella, ad esempio per stimare il tempo o la durata necessari per spostare la cartella (in un’altra posizione sull’unità locale, sull’unità esterna o sull’archivio cloud) o se considerevolmente una cartella di grandi dimensioni per eliminarla semplicemente per liberare spazio sul disco rigido: puoi ottenere immediatamente le dimensioni di una cartella/directory utilizzando PowerShell. Discuteremo questo argomento nei seguenti sottotitoli.
- Comandi di PowerShell per ottenere le dimensioni della cartella
- Ottieni le dimensioni della cartella in byte, MB e GB
- Ottieni la dimensione della cartella in decimale
- Ottieni la dimensione di elementi di tipo di file specifici
- Ottieni una cartella e le dimensioni della sottocartella
- Ottieni le dimensioni di cartelle e sottocartelle con un filtro temporale
- Ottieni tutte le dimensioni delle cartelle delle sottodirectory utilizzando lo script di PowerShell
1] Comandi di PowerShell per ottenere la dimensione della cartella
Di seguito sono riportati i 2 cmdlet principali di PowerShell che possono essere usati con opzioni e parametri per filtrare i risultati in base alle proprie esigenze per ottenere le dimensioni di una cartella.
- Get-ChildItem (Alias: GCI) – Questo comando acquisisce le informazioni da una o directory specificate, incluse le sottodirectory – le directory vuote non vengono visualizzate o mostrate.
- Measure-Object (Alias: measure) – Questo comando calcola le diverse proprietà di una directory specificata, inclusa la sua dimensione.
Un alias è un nome alternativo per il comando, quindi non dovrai digitare l’intero comando ogni volta.
2] Ottieni le dimensioni della cartella in byte, MB e GB
Dimensione cartella in byte :
Get-ChildItem PathToFolder | Measure-Object -Property Length -sum
Dimensione cartella in MB :
(gci PathToFolder | measure Length -s).sum / 1Mb
Dimensione cartella in GB :
(gci PathToFolder | measure Length -s).sum / 1Gb
Il campo “Somma” mostra la dimensione della cartella in byte, MB e GB a seconda dei casi.
3] Ottieni la dimensione della cartella in decimale
L’output per la dimensione della cartella in MB e GB è ambiguo da comprendere a colpo d’occhio poiché la dimensione è in molte posizioni decimali. Quindi, puoi eseguire il comando seguente per arrotondare il risultato in decimale. Sostituire ” X ” con il numero di cifre decimali a cui si desidera arrotondare il risultato e specificare GB o MB secondo necessità.
"{0:NX} GB"-f ((gci PathToFolder | measure Length -s).sum / 1Gb)
4] Ottieni la dimensione di elementi specifici del tipo di file
Se vuoi ottenere la dimensione di tutti gli elementi all’interno di una cartella con lo stesso tipo/estensione di file, esegui il comando seguente. Sostituire il segnaposto FileType/Extension di conseguenza.
(gci PathToFolder *.FileType/Extension | measure Length -s).sum / 1Gb
5] Ottieni le dimensioni di cartelle e sottocartelle
Per ottenere le dimensioni della cartella e della sottocartella (inclusi gli elementi all’interno), è necessario utilizzare il -Recurse
parametro utilizzato in congettura con il -ErrorAction SilentlyContinue
parametro per ignorare gli errori di accesso alla directory come Permesso negato, ecc.
Per ottenere la dimensione del genitore e delle sottodirectory, puoi eseguire uno dei comandi seguenti.
(gci PathToFolder –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb
"{0:NX} GB"-f ((gci –force PathToFolder –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb)
Questo cmdlet includerà anche le dimensioni di tutti gli elementi nascosti.
6] Ottieni le dimensioni di una cartella e di una sottocartella con un filtro temporale
Puoi ottenere la dimensione delle cartelle padre e figlio e anche applicare filtri per trovare la dimensione degli elementi creati in un giorno specifico, un mese specifico o un anno specifico. Questo è possibile definirlo specificando le date di inizio e di fine, che sono definite rispettivamente dai parametri -gt
(maggiore di) e -lt
(minore di). Il formato delle date è MM/GG/AA.
Per ottenere la dimensione di una cartella con sottocartelle create in un periodo specifico, eseguire il comando seguente. Sostituire di conseguenza il segnaposto MM/GG/AA.
(gci -force PathToFolder –Recurse -ErrorAction SilentlyContinue |? {$_.CreationTime -gt ‘MM/DD/YY’ -AND $_.CreationTime -lt ‘MM/DD/YY’}| measure Length -s).sum / 1Gb
Puoi anche applicare questi filtri utilizzando i comandi forniti in precedenza per ottenere solo le dimensioni delle cartelle delle cartelle principali.
7] Ottieni tutte le dimensioni delle cartelle delle sottodirectory utilizzando lo script PowerShell
Ora, per rendere le cose più complicate, supponiamo di dover ottenere la dimensione di ogni sottodirectory all’interno di una cartella. Ciò può essere ottenuto anche utilizzando PowerShell. Naturalmente, per ottenere tutte le dimensioni delle cartelle delle sottodirectory, comprese le dimensioni degli elementi all’interno delle sottodirectory e presentate in un formato tabulare ordinato, è possibile creare ed eseguire uno script PowerShell utilizzando il codice seguente.
$targetfolder='DriveLetter:\'
$dataColl = @()
gci -force $targetfolder -ErrorAction SilentlyContinue |? { $_ -is [io.directoryinfo] } | % {
$len = 0
gci -recurse -force $_.fullname -ErrorAction SilentlyContinue | % { $len += $_.length }
$foldername = $_.fullname
$foldersize= '{0:N2}' -f ($len / 1Gb)
$dataObject = New-Object PSObject
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldername” -value $foldername
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldersizeGb” -value $foldersize
$dataColl += $dataObject
}
$dataColl | Out-GridView -Title “Size of all subdirectories in DriveLetter drive”
Sostituisci il segnaposto DriveLetter nel codice precedente di conseguenza e assicurati di attivare l’esecuzione dello script PowerShell.
Questo è tutto!
C’è un modo per vedere la dimensione di una cartella in Windows?
Il modo convenzionale per verificare le dimensioni della cartella è aprire Esplora file e fare clic con il pulsante destro del mouse sul file, sulla cartella o sull’unità di cui si desidera visualizzare le dimensioni. Dal menu che appare, seleziona Proprietà e vedrai la dimensione totale del file/unità. Il modo non convenzionale per eseguire la stessa attività è utilizzare PowerShell come abbiamo dimostrato in questo post sopra.
Qual è il comando DOS per elencare cartelle e dimensioni?
Il dir
comando visualizza informazioni su file e directory e quanto spazio su disco è disponibile. Per impostazione predefinita, il comando visualizza il nome, la dimensione e l’ora dell’ultima modifica di ogni file nella directory corrente.
Lascia un commento