Come ottenere la dimensione del file in KB utilizzando PowerShell

  1. Usa il metodo Get-Item e la proprietà Length per ottenere la dimensione del file in PowerShell
  2. Usa Get-Item e Select-Object per ottenere la dimensione del file in PowerShell
  3. Usa Get-ChildItem e ForEach-Object per ottenere le dimensioni dei file in PowerShell
  4. Usa Get-ChildItem e ForEach-Object per ottenere le dimensioni dei file in PowerShell
  5. Conclusione
Come ottenere la dimensione del file in KB utilizzando PowerShell

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:

dimensione file powershell - output 1

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:

powershell ottieni dimensione file - output 2

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:

powershell ottieni dimensione file - uscita 3

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:

powershell ottieni dimensione file - output 4

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:

powershell ottieni dimensione file - output 5

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.

Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Articolo correlato - PowerShell File