Come contare gli oggetti in una cartella con PowerShell
-
Usa il cmdlet
Measure-Objectper contare gli elementi in una cartella con PowerShell -
Usa
Get-ChildIteme la proprietàCountper contare gli elementi in una cartella con PowerShell -
Usa il ciclo
foreachper contare gli elementi in una cartella con PowerShell - Conclusione
PowerShell supporta diverse operazioni su file e cartelle, come creare, copiare, spostare, rimuovere e elencare file e cartelle. A volte, potrebbe essere necessario sapere quanti file e cartelle sono presenti in una cartella specifica.
PowerShell offre diversi metodi per raggiungere questo obiettivo, ognuno con i propri vantaggi e casi d’uso. Uno di questi metodi consiste nell’utilizzare il cmdlet Measure-Object, che fornisce un modo semplice per contare gli oggetti misurando le loro proprietà.
Questo articolo esplora come utilizzare il cmdlet Measure-Object per contare gli elementi in una cartella in PowerShell, insieme ad altri metodi alternativi per il confronto.
Usa il cmdlet Measure-Object per contare gli elementi in una cartella con PowerShell
Il cmdlet Measure-Object calcola i valori delle proprietà di determinati tipi di oggetti. Puoi utilizzare questo cmdlet per contare gli oggetti.
Calcola anche la media, la somma, il minimo, il massimo e la deviazione standard dei valori numerici. Puoi contare il numero di righe, parole e caratteri degli oggetti stringa.
Il seguente comando conta il numero di file e cartelle presenti nella directory path. Conta tutti i file e le cartelle al primo livello dell’albero delle cartelle.
(Get-ChildItem 'path' | Measure-Object).Count
In questo esempio, stiamo utilizzando Get-ChildItem per recuperare tutti gli elementi all’interno della cartella situata in "path". Questa collezione di elementi viene quindi passata a Measure-Object, che calcola varie proprietà.
Poiché siamo interessati a contare gli elementi, accediamo alla proprietà Count dell’oggetto risultante, fornendoci il conteggio totale degli elementi nella cartella.
Output:

La proprietà Count mostra solo i valori di conteggio.
La proprietà Count, come suggerisce il suo nome, mostra semplicemente i valori di conteggio ottenuti dalla misurazione.
Ad esempio, se desideri contare solo i file all’interno di una directory, puoi utilizzare il parametro -File con Get-ChildItem. Questo parametro istruisce PowerShell a recuperare esclusivamente un elenco di file.
(Get-ChildItem -File 'path' | Measure-Object).Count
Questo comando calcola il conteggio dei file presenti nella directory path. L’output, in questo caso, è 11, indicando il numero totale di file trovati.
Output:

In modo simile, se vuoi contare solo le cartelle, puoi utilizzare il parametro -Directory:
(Get-ChildItem -Directory 'path' | Measure-Object).Count
In questo esempio, PowerShell conta solo le cartelle all’interno della directory specificata, restituendo un conteggio di 6.
Output:

Il parametro -Recurse in Get-ChildItem ottiene gli elementi ricorsivamente nella posizione specificata. Puoi utilizzare il parametro -Recurse per contare file e cartelle ricorsivamente.
(Get-ChildItem -Recurse 'path' | Measure-Object).Count
Questo comando conta tutti i file e le cartelle all’interno della posizione specificata, inclusi quelli nelle sottocartelle. L’output, in questo caso, è 12082, indicando il conteggio totale degli elementi trovati ricorsivamente.
Output:

Usa Get-ChildItem e la proprietà Count per contare gli elementi in una cartella con PowerShell
Contare gli elementi all’interno di una cartella è un’operazione fondamentale nello scripting PowerShell, specialmente quando si gestiscono file e directory. Un modo semplice per raggiungere questo obiettivo è utilizzare il cmdlet Get-ChildItem insieme alla proprietà Count.
(Get-ChildItem -Path "path").Count
In questo esempio, stiamo utilizzando Get-ChildItem per recuperare tutti gli elementi all’interno della cartella situata in "path". La collezione di elementi restituita da Get-ChildItem viene quindi passata alla proprietà .Count, che ci fornisce il conteggio totale degli elementi nella cartella.
Output:

Usa il ciclo foreach per contare gli elementi in una cartella con PowerShell
Contare gli elementi all’interno di una cartella è un’operazione fondamentale nello scripting PowerShell, specialmente quando si gestiscono file e directory. Un modo semplice per raggiungere questo obiettivo è utilizzare il cmdlet Get-ChildItem insieme alla proprietà Count.
$folderPath = "path"
$count = 0
foreach ($item in (Get-ChildItem -Path $folderPath)) {
$count++
}
$count
In questo esempio, prima definiamo la variabile $folderPath per memorizzare il percorso della cartella in cui vogliamo contare gli elementi. Inizializziamo una variabile contatore, $count, a zero.
Poi, utilizzando un ciclo foreach, iteriamo su ciascun elemento nella cartella ottenuta tramite Get-ChildItem. Per ciascun elemento incontrato, incrementiamo la variabile $count.
Dopo che il ciclo è completato, restituiamo il conteggio finale degli elementi memorizzati in $count.
Output:

Conclusione
Contare gli elementi in una cartella con PowerShell è un compito fondamentale per molti scenari di scripting, dalla gestione di file di base a flussi di lavoro di automazione complessi. Sfruttando i cmdlet versatili di PowerShell come Measure-Object e Get-ChildItem e strutture di controllo come i cicli foreach, gli scrittori di script possono determinare efficientemente il numero di elementi all’interno di una cartella.
Ogni metodo offre i suoi vantaggi, consentendo agli scrittori di script di scegliere l’approccio che meglio si adatta alle loro specifiche esigenze e preferenze. Con le conoscenze acquisite da questo articolo, gli utenti di PowerShell possono gestire con sicurezza i compiti di conteggio di file e cartelle nelle loro attività di scripting.
