Como Contar Itens em uma Pasta Com PowerShell

  1. Use o Cmdlet Measure-Object para Contar Itens em uma Pasta Com PowerShell
  2. Use o Get-ChildItem e a Propriedade Count para Contar Itens em uma Pasta Com PowerShell
  3. Use o Loop foreach para Contar Itens em uma Pasta Com PowerShell
  4. Conclusão
Como Contar Itens em uma Pasta Com PowerShell

O PowerShell suporta diferentes operações de arquivos e pastas, como criar, copiar, mover, remover e listar arquivos e pastas. Às vezes, você pode precisar saber quantos arquivos e pastas estão presentes em uma pasta específica.

O PowerShell oferece vários métodos para realizar essa tarefa, cada um com suas vantagens e casos de uso. Um desses métodos é usar o cmdlet Measure-Object, que fornece uma maneira simples de contar itens medindo suas propriedades.

Este artigo explora como utilizar o cmdlet Measure-Object para contar itens em uma pasta no PowerShell, junto com outros métodos alternativos para comparação.

Use o Cmdlet Measure-Object para Contar Itens em uma Pasta Com PowerShell

O cmdlet Measure-Object calcula os valores de propriedades de certos tipos de objetos. Você pode usar esse cmdlet para contar objetos.

Ele também calcula a Média, Soma, Mínimo, Máximo e Desvio Padrão de valores numéricos. Você pode contar o número de linhas, palavras e caracteres de objetos do tipo string.

O seguinte comando conta o número de arquivos e pastas presentes no diretório path. Ele conta todos os arquivos e pastas no primeiro nível da árvore de pastas.

(Get-ChildItem 'path' | Measure-Object).Count

Neste exemplo, estamos usando Get-ChildItem para recuperar todos os itens dentro da pasta localizada em "path". Esta coleção de itens é então passada para Measure-Object, que calcula várias propriedades.

Como estamos interessados em contar os itens, acessamos a propriedade Count do objeto resultante, que nos fornece a contagem total de itens na pasta.

Saída:

contar itens em uma pasta com powershell - saída 1

A propriedade Count exibe apenas os valores de contagem.

A propriedade Count, como seu nome sugere, simplesmente exibe os valores de contagem obtidos da medição.

Por exemplo, se você deseja contar apenas arquivos dentro de um diretório, pode utilizar o parâmetro -File com Get-ChildItem. Este parâmetro instrui o PowerShell a recuperar uma lista de arquivos exclusivamente.

(Get-ChildItem -File 'path' | Measure-Object).Count

Este comando calcula a contagem de arquivos presentes no diretório path. A saída, neste caso, é 11, indicando o número total de arquivos encontrados.

Saída:

contar itens em uma pasta com powershell - saída 2

Da mesma forma, se você quiser contar apenas pastas, pode empregar o parâmetro -Directory:

(Get-ChildItem -Directory 'path' | Measure-Object).Count

Neste exemplo, o PowerShell conta apenas as pastas dentro do diretório especificado, retornando uma contagem de 6.

Saída:

contar itens em uma pasta com powershell - saída 3

O parâmetro -Recurse em Get-ChildItem obtém os itens recursivamente na localização especificada. Você pode usar o parâmetro -Recurse para contar arquivos e pastas recursivamente.

(Get-ChildItem -Recurse 'path' | Measure-Object).Count

Este comando conta todos os arquivos e pastas dentro da localização especificada, incluindo aqueles em subpastas. A saída, neste caso, é 12082, indicando o total de itens encontrados recursivamente.

Saída:

contar itens em uma pasta com powershell - saída 4

Use o Get-ChildItem e a Propriedade Count para Contar Itens em uma Pasta Com PowerShell

Contar itens dentro de uma pasta é uma operação fundamental na scriptação do PowerShell, especialmente ao gerenciar arquivos e diretórios. Uma abordagem simples para alcançar isso é utilizando o cmdlet Get-ChildItem juntamente com a propriedade Count.

(Get-ChildItem -Path "path").Count

Neste exemplo, estamos usando Get-ChildItem para buscar todos os itens dentro da pasta localizada em "path". A coleção de itens retornada pelo Get-ChildItem é então passada para a propriedade .Count, que nos fornece a contagem total de itens na pasta.

Saída:

contar itens em uma pasta com powershell - saída 5

Use o Loop foreach para Contar Itens em uma Pasta Com PowerShell

Contar itens dentro de uma pasta é uma operação fundamental na scriptação do PowerShell, especialmente ao gerenciar arquivos e diretórios. Uma abordagem simples para alcançar isso é utilizando o cmdlet Get-ChildItem juntamente com a propriedade Count.

$folderPath = "path"
$count = 0
foreach ($item in (Get-ChildItem -Path $folderPath)) {
    $count++
}
$count

Neste exemplo, primeiro definimos a variável $folderPath para armazenar o caminho da pasta na qual queremos contar itens. Inicializamos uma variável de contagem, $count, com zero.

Então, usando um loop foreach, iteramos através de cada item na pasta obtida por Get-ChildItem. Para cada item encontrado, incrementamos a variável $count.

Após a conclusão do loop, exibimos a contagem final de itens armazenados em $count.

Saída:

contar itens em uma pasta com powershell - saída 6

Conclusão

Contar itens em uma pasta com PowerShell é uma tarefa fundamental para muitos cenários de script, desde gerenciamento básico de arquivos até fluxos de automação complexos. Ao aproveitar os cmdlets versáteis do PowerShell, como Measure-Object e Get-ChildItem, e estruturas de controle como loops foreach, os scriptadores podem determinar de forma eficiente o número de itens dentro de uma pasta.

Cada método oferece suas vantagens, permitindo que os scriptadores escolham a abordagem que melhor se adapta às suas necessidades e preferências específicas. Com o conhecimento adquirido neste artigo, os usuários do PowerShell podem lidar com confiança com tarefas de contagem de arquivos e pastas em seus esforços de script.

Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se
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

Artigo relacionado - PowerShell Folder