Come ottenere la dimensione del file in KB utilizzando PowerShell
-
Usa il metodo
Get-Item
e la proprietàLength
per ottenere la dimensione del file in PowerShell -
Usa
Get-Item
eSelect-Object
per ottenere la dimensione del file in PowerShell -
Usa
Get-ChildItem
eForEach-Object
per ottenere le dimensioni dei file in PowerShell -
Usa
Get-ChildItem
eForEach-Object
per ottenere le dimensioni dei file in PowerShell - Conclusione

PowerShell è uno strumento potente che ti consente di eseguire diverse operazioni sui file nel sistema. Puoi svolgere attività sui file come creare, copiare, spostare, rimuovere, leggere, rinominare e controllare l’esistenza di file in PowerShell.
In Windows, puoi controllare la dimensione di un file tramite l’interfaccia grafica facendo clic destro sull’icona del file e selezionando l’opzione Proprietà
. Ma, a volte, potrebbe essere necessario controllare la dimensione del file da PowerShell.
Questo tutorial ti insegnerà come ottenere la dimensione del file utilizzando PowerShell.
Usa il metodo Get-Item
e la proprietà Length
per ottenere la dimensione del file in PowerShell
Gli oggetti file hanno la proprietà Length
in PowerShell. Essa rappresenta la dimensione del file in byte.
Il seguente comando ottiene la dimensione di un file train.csv
in byte.
# Getting the size of a file
$file = Get-Item "sample.txt"
$fileSize = $file.Length
Write-Host "The size of the file is $fileSize bytes"
Sostituisci sample.txt
con il percorso del file desiderato.
Nel nostro codice, iniziamo utilizzando Get-Item
per recuperare l’oggetto file per sample.txt
. Una volta ottenuto l’oggetto file in $file
, accediamo alla sua proprietà .Length
per ottenere la dimensione del file in byte.
Infine, utilizziamo Write-Host
per stampare la dimensione sulla console. Questo approccio è efficace perché sfrutta la potenza della natura orientata agli oggetti di PowerShell, permettendoci di accedere facilmente alle proprietà del file.
Output:
Quando si lavora con i file system in PowerShell, è spesso necessario non solo ottenere la dimensione di un file, ma anche presentare queste informazioni in un formato più leggibile per l’umanità come kilobyte (KB), megabyte (MB) o gigabyte (GB). PowerShell semplifica questo processo consentendoci di recuperare la dimensione del file in byte utilizzando Get-Item
e poi convertire questo valore in unità maggiori.
# Getting and converting the size of a file
$file = Get-Item "sample.txt"
$fileSizeBytes = $file.Length
$fileSizeKB = $fileSizeBytes / 1KB
$fileSizeMB = $fileSizeBytes / 1MB
$fileSizeGB = $fileSizeBytes / 1GB
Write-Host "File size: $fileSizeBytes bytes, $fileSizeKB KB, $fileSizeMB MB, $fileSizeGB GB"
Sostituisci sample.txt
con il percorso del file desiderato.
In questo script, iniziamo ottenendo l’oggetto file utilizzando Get-Item
. Quindi accediamo alla proprietà .Length
di questo oggetto per ottenere la dimensione del file in byte.
Successivamente, eseguiamo semplici operazioni aritmetiche per convertire questo valore in byte in KB, MB e GB. Infine, utilizziamo Write-Host
per stampare tutte queste dimensioni in modo user-friendly.
Output:
Usa Get-Item
e Select-Object
per ottenere la dimensione del file in PowerShell
Uno di questi compiti è recuperare la dimensione di un file. PowerShell offre un modo flessibile per farlo combinando Get-Item
con Select-Object
.
La combinazione di Get-Item
e Select-Object
viene utilizzata per ottenere le proprietà del file, inclusa la dimensione del file. Questo approccio è particolarmente utile quando hai bisogno di estrarre informazioni specifiche (come la dimensione del file) in un formato pulito e leggibile.
# Getting the size of a file using Select-Object
$fileSize = (Get-Item "sample.txt" | Select-Object -ExpandProperty Length)
Write-Host "The size of the file is $fileSize bytes"
Sostituisci sample.txt
con il percorso del tuo file.
Nel nostro script, usiamo prima Get-Item
per recuperare l’oggetto file per sample.txt
. Quindi inviamo (|
) questo oggetto a Select-Object
, specificando il parametro -ExpandProperty Length
per estrarre direttamente la dimensione del file in byte.
Utilizzando Write-Host
, stampiamo queste informazioni sulla console. Questo metodo è snodato ed efficace, soprattutto quando siamo interessati solo a un’informazione su quel file.
Output:
Usa Get-ChildItem
e ForEach-Object
per ottenere le dimensioni dei file in PowerShell
L’uso di Get-ChildItem
insieme a ForEach-Object
serve a enumerare i file in una directory e elaborare ciascun file singolarmente per ottenerne la dimensione. Questo approccio è ampiamente applicabile nell’amministrazione di sistema per monitorare le dimensioni delle directory, nella gestione dei dati per valutare i requisiti di archiviazione e nella creazione di rapporti dettagliati delle dimensioni dei file per analisi o scopi di audit.
# Getting sizes of all files in a directory
Get-ChildItem "Directory\" | ForEach-Object {
$fileSize = $_.Length
Write-Host "$($_.Name) size: $fileSize bytes"
}
Sostituisci Directory\
con il percorso della directory di tua scelta.
Nel nostro script, Get-ChildItem
viene utilizzato per recuperare tutti i file nella directory Directory\
. Ogni file recuperato viene quindi inviato a ForEach-Object
.
All’interno del blocco di script ForEach-Object
, accediamo alla proprietà Length
di ciascun oggetto file ($_
) per ottenere la sua dimensione in byte. Quindi, il cmdlet Write-Host
viene utilizzato per stampare il nome e la dimensione di ciascun file.
Questo metodo è efficiente per iterare su più file e ottenere le loro dimensioni singolarmente, consentendo un output dettagliato e personalizzabile.
Output:
Usa Get-ChildItem
e ForEach-Object
per ottenere le dimensioni dei file in PowerShell
Combinando i cmdlet di manipolazione dei file di PowerShell con ForEach-Object
, possiamo calcolare in modo efficiente le dimensioni dei file raggruppati per tipo. Questo metodo è particolarmente vantaggioso in scenari come l’analisi dello spazio di archiviazione, l’organizzazione dei dati e la reportistica dove i tipi di file e le loro dimensioni corrispondenti sono critici.
Lo scopo principale di questa tecnica è iterare sui file in una directory, raggrupparli secondo la loro estensione e calcolare la dimensione totale per ciascun tipo di file.
# Calculating total file sizes by file type
Get-ChildItem "Directory" -Recurse | Group-Object Extension | ForEach-Object {
$totalSize = ($_.Group | Measure-Object -Property Length -Sum).Sum
Write-Host "Total size for $($_.Name) files: $totalSize bytes"
}
Sostituisci Directory
con il percorso della directory di tua scelta.
In questo script, iniziamo utilizzando Get-ChildItem
per ottenere tutti i file nella directory Directory
, comprese le sottodirectory (-Recurse
). Questi file vengono quindi raggruppati in base alla loro estensione utilizzando Group-Object
.
Il cmdlet ForEach-Object
elabora ciascun gruppo, dove calcoliamo la dimensione totale di tutti i file in ciascun gruppo utilizzando Measure-Object -Property Length -Sum
.
Infine, la dimensione totale per ogni tipo di file viene visualizzata utilizzando Write-Host
. Questo metodo è efficiente per riassumere i dati e fornisce una chiara visione della distribuzione delle dimensioni dei file per tipo.
Output:
Conclusione
In conclusione, questo articolo ha fornito una guida completa su come sfruttare PowerShell per svolgere varie operazioni sulla dimensione dei file. Abbiamo esplorato diversi metodi: utilizzando Get-Item
e la proprietà Length
, Get-Item
combinato con Select-Object
, e Get-ChildItem
con ForEach-Object
per scenari più avanzati come il raggruppamento delle dimensioni dei file per tipo.
Ogni metodo serve a uno scopo specifico, dall’ottenere la dimensione di un singolo file in un formato leggibile, all’analizzare la distribuzione di archiviazione tra diversi tipi di file in una directory.
Per coloro che sono nuovi a PowerShell, questo tutorial offre un chiaro punto di partenza per comprendere le tecniche di manipolazione dei file e di calcolo delle dimensioni. Gli utenti esperti apprezzeranno gli esempi dettagliati e le applicazioni pratiche nell’amministrazione di sistema e nella gestione dei dati.
Articolo correlato - PowerShell File
- Come caricare file con FTP in PowerShell
- Come creare un file di testo utilizzando Windows PowerShell
- Come estrarre il nome del file da un percorso utilizzando PowerShell
- Come leggere i file riga per riga in Windows PowerShell
- Come memorizzare il contenuto di un file di testo in una variabile utilizzando PowerShell
- Come ottenere il percorso completo dei file in PowerShell