Como Contar Objetos no PowerShell
-
Use o Método
Count
no PowerShell para Contar Objetos -
Contar no PowerShell Usando o Comando
Measure-Object
- Conclusão

O PowerShell, com sua vasta gama de operadores e cmdlets, oferece uma maneira eficiente e flexível de gerenciar e manipular dados.
Entre esses operadores, o operador Count
e o cmdlet Measure-Object
são ferramentas poderosas que permitem determinar rapidamente o número de objetos em um array ou coleção, assim como calcular várias propriedades desses objetos.
Ao aproveitar esses recursos, você pode recuperar facilmente contagens e outras estatísticas valiosas, tornando o PowerShell uma ferramenta versátil para análise e gerenciamento de dados.
Este artigo explora aplicações práticas tanto do operador Count
quanto do cmdlet Measure-Object
, demonstrando como contar arquivos em uma pasta e realizar outras tarefas essenciais de contagem usando o PowerShell.
Se você é um administrador de sistema buscando gerenciar seus recursos ou um desenvolvedor buscando automatizar tarefas relacionadas a dados, entender como contar e medir objetos é uma habilidade valiosa em seu conjunto de ferramentas do PowerShell.
Use o Método Count
no PowerShell para Contar Objetos
Sintaxe:
(PSObject).Count
Podemos acessar o operador Count
do PowerShell envolvendo o objeto em parênteses (()
). Em seguida, adicione um ponto (.
), seguido da contagem.
Use o Operador Count
para Contar Arquivos
Seja você um administrador de sistema ou um desenvolvedor, existem cenários em que você precisa contar arquivos dentro de um diretório. O PowerShell simplifica essa tarefa com o operador Count
, permitindo que você determine rapidamente o número de arquivos em uma pasta. Neste artigo, vamos explorar como contar arquivos em uma pasta usando o operador Count
, passo a passo.
Passo 1: Especificar o Caminho da Pasta
Primeiro, precisamos especificar o caminho da pasta na qual queremos contar arquivos. Substitua "C:\SeuCaminhoPasta"
pelo caminho real da sua pasta.
$folderPath = "C:\YourFolderPath"
Passo 2: Recuperar os Arquivos
Em seguida, usaremos o cmdlet Get-ChildItem
para recuperar os arquivos dentro da pasta especificada. O parâmetro -File
garante que apenas arquivos (e não diretórios) sejam recuperados.
$files = Get-ChildItem -Path $folderPath -File
Passo 3: Contar os Arquivos
Agora que recuperamos os arquivos, podemos usar o operador Count
para determinar o número de arquivos.
$fileCount = $files.Count
Passo 4: Exibir o Resultado
Finalmente, podemos exibir a contagem de arquivos para o usuário ou usá-la em nosso script conforme necessário.
Write-Host "Total files in $folderPath: $fileCount"
Script Completo do PowerShell
Aqui está o script completo do PowerShell para contar arquivos em uma pasta:
# Step 1: Specify the Folder Path
$folderPath = "C:\YourFolderPath"
# Step 2: Retrieve the Files
$files = Get-ChildItem -Path $folderPath -File
# Step 3: Count the Files
$fileCount = $files.Count
# Step 4: Display the Result
Write-Host "Total files in $folderPath: $fileCount"
Use o Operador Count
para Contar Arquivos Recursivamente (incluindo Subpastas) em Uma Pasta
E se também precisarmos contar todos os arquivos na pasta e em suas subpastas?
Abaixo está o código completo.
# Define the folder path
$folderPath = "C:\YourFolderPath"
# Count the files in the folder and subfolders
$fileCount = (Get-ChildItem -Path $folderPath -File -Recurse).Count
# Display the result
Write-Host "Total files in the folder and subfolders: $fileCount"
Agora, vamos detalhar o código e explicar cada parte em detalhes:
1. Contar os Arquivos na Pasta e Subpastas
# Count the files in the folder and subfolders
$fileCount = (Get-ChildItem -Path $folderPath -File -Recurse).Count
Aqui, usamos o cmdlet Get-ChildItem
para recuperar todos os arquivos na pasta especificada e em suas subpastas (-Recurse
). O parâmetro -File
garante que apenas arquivos estejam incluídos no resultado, excluindo diretórios.
Envolvemos este comando em parênteses ( ... )
para aplicar imediatamente o operador Count
ao resultado. Este operador conta os elementos na coleção, nos dando a contagem total de arquivos.
Use o Operador Count
para Contar Objetos em Um Array
Contar objetos em um array é uma tarefa comum no PowerShell, e é bastante simples graças ao operador Count
.
Esse operador permite que você determine rapidamente o número de elementos em um array ou coleção. Vamos introduzir como contar objetos em um array de string usando o operador Count
.
Funciona com vários tipos de dados, incluindo arrays de string. Aqui está como você pode usá-lo:
# Create a string array
$stringArray = "Item1", "Item2", "Item3", "Item4"
# Count the objects in the array
$count = $stringArray.Count
# Display the result
Write-Host "Total items in the array: $count"
No código acima, primeiro criamos um array de string chamado $stringArray
, e então usamos o operador Count
para determinar o número de itens no array. Finalmente, exibimos a contagem usando Write-Host
.
Contar no PowerShell Usando o Comando Measure-Object
O cmdlet Measure-Object
do PowerShell, frequentemente referido como Measure
, calcula várias propriedades de objetos, incluindo a contagem de itens.
Contar Arquivos em Uma Pasta Usando o cmdlet Measure-Object
Para contar arquivos em uma pasta, utilizaremos o cmdlet Measure-Object
em combinação com outros comandos do PowerShell.
Aqui está um guia passo a passo sobre como contar arquivos em uma pasta usando Measure-Object
:
Passo 1: Obter os Arquivos
Para contar os arquivos, use o cmdlet Get-ChildItem
, que recupera uma lista de arquivos e pastas no diretório especificado. Por padrão, inclui também subpastas. Aqui está o comando:
$fileList = Get-ChildItem -Path $folderPath -File
Neste comando:
$fileList
contém os objetos de arquivo.Measure-Object
calcula propriedades dos objetos..Count
recupera a contagem de objetos.
Agora, a variável $fileCount
contém o número de arquivos na pasta especificada.
Código de Exemplo
Aqui está o script completo do PowerShell:
# Step 1: Define the folder path
$folderPath = "C:\YourFolderPath"
# Step 2: Get the files
$fileList = Get-ChildItem -Path $folderPath -File
# Step 3: Measure the object count
$fileCount = ($fileList | Measure-Object).Count
# Step 4: Display the result
Write-Host "Number of files in $folderPath: $fileCount"
Substitua "C:\SeuCaminhoPasta"
pelo caminho para sua pasta e execute o script para contar os arquivos.
Contar Arquivos em Subpastas
Se você quiser contar arquivos nas subpastas também, pode modificar o comando Get-ChildItem
. Usando o parâmetro -Recurse
, você instrui o PowerShell a incluir subdiretórios. Aqui está como:
$fileList = Get-ChildItem -Path $folderPath -File -Recurse
Esta única modificação estende a contagem para todos os arquivos na pasta especificada e suas subpastas.
Usando Measure-Object para Contar Linhas em Um Arquivo
O cmdlet Measure-Object
no PowerShell é uma ferramenta versátil para calcular propriedades de objetos, incluindo o número de linhas em arquivos de texto. Para contar linhas em um arquivo de texto, usaremos o cmdlet Get-Content
em conjunto com Measure-Object
.
Aqui está um guia passo a passo sobre como contar linhas em um arquivo de texto usando Measure-Object
:
Passo 1: Ler o Conteúdo do Arquivo
Para contar as linhas, use o cmdlet Get-Content
para ler o conteúdo do arquivo. Este cmdlet lê cada linha do arquivo e armazena-as em um array. Aqui está o comando:
$fileContent = Get-Content -Path $filePath
Neste comando:
-Path
especifica o caminho para o arquivo de texto.$fileContent
armazena as linhas do arquivo de texto como um array.
Agora, você tem o conteúdo do arquivo de texto carregado na variável $fileContent
.
Passo 2: Medir a Contagem de Linhas
Utilize o cmdlet Measure-Object
para contar as linhas no arquivo de texto. Aqui está o comando:
$lineCount = ($fileContent | Measure-Object -Line).Lines
Neste comando:
$fileContent
contém as linhas do arquivo de texto.Measure-Object -Line
calcula o número de linhas..Lines
recupera a contagem de linhas.
Agora, a variável $lineCount
contém o total de linhas no arquivo de texto.
Código de Exemplo Completo
Aqui está o script completo do PowerShell:
# Step 1: Define the file path
$filePath = "C:\YourFilePath\YourFile.txt"
# Step 2: Read the file content
$fileContent = Get-Content -Path $filePath
# Step 3: Measure the line count
$lineCount = ($fileContent | Measure-Object -Line).Lines
# Step 4: Display the result
Write-Host "Number of lines in $filePath: $lineCount"
Substitua "C:\SeuCaminhoArquivo\SeuArquivo.txt"
pelo caminho do seu arquivo de texto e execute o script para contar as linhas.
Usando Measure-Object
para Contar Processos
O cmdlet Measure-Object
no PowerShell não se limita a contar linhas ou números. Ele também pode contar objetos, tornando-se uma ferramenta valiosa para contar processos. Usaremos Get-Process
para recuperar a lista de processos e, em seguida, aplicaremos Measure-Object
para contá-los.
Aqui está um guia passo a passo sobre como contar processos usando Measure-Object
:
Passo 1: Recuperar a Lista de Processos
Comece usando o cmdlet Get-Process
para obter uma lista de processos em execução. Armazene essa lista em uma variável para análise posterior:
$processList = Get-Process
Neste comando:
$processList
armazena a lista de processos em execução.
Agora, você tem a lista de processos disponível na variável $processList
.
Passo 2: Medir a Contagem de Processos
Em seguida, aplique o cmdlet Measure-Object
para contar os processos na lista. Aqui está o comando:
$processCount = ($processList | Measure-Object).Count
Neste comando:
$processList
contém a lista de processos.Measure-Object
calcula várias propriedades dos objetos na lista..Count
recupera a contagem de objetos.
A variável $processCount
agora contém o total de processos em execução no seu sistema.
Passo 3: Exibir o Resultado
Para ver a contagem de processos, exiba o valor armazenado na variável $processCount
:
Write-Host "Number of processes running: $processCount"
Este comando imprime uma mensagem que inclui a contagem de processos.
Código de Exemplo Completo
Aqui está o script completo do PowerShell:
# Step 1: Retrieve the process list
$processList = Get-Process
# Step 2: Measure the process count
$processCount = ($processList | Measure-Object).Count
# Step 3: Display the result
Write-Host "Number of processes running: $processCount"
Execute o script para contar os processos em execução no seu sistema.
Usando Measure-Object para Contar Chaves de Registro
Quando se trata de contar chaves de registro, podemos aproveitar esse cmdlet em conjunto com o cmdlet Get-Item
, que nos permite acessar chaves do registro como se fossem caminhos de sistema de arquivos.
Aqui está um guia passo a passo sobre como contar chaves do registro usando Measure-Object
:
Passo 1: Acessar a Chave do Registro
Comece usando o cmdlet Get-Item
para acessar a chave de registro específica que você deseja contar. Você pode especificar o caminho do registro como uma string:
$registryPath = "HKLM:\Software\YourRegistryKeyPath"
$registryKey = Get-Item -LiteralPath $registryPath
Neste comando:
$registryPath
armazena o caminho para a chave do registro que você deseja contar.$registryKey
acessa a chave do registro.
Certifique-se de substituir "HKLM:\Software\SeuCaminhoChaveRegistro"
pelo caminho real da chave de registro que você deseja contar.
Passo 2: Medir a Contagem de Chaves do Registro
Aplique o cmdlet Measure-Object
para contar as chaves do registro no caminho especificado:
$keyCount = (Get-ChildItem -Path $registryKey.PSPath).Count
Neste comando:
(Get-ChildItem -Path $registryKey.PSPath)
recupera os itens filhos (chaves do registro) dentro do caminho especificado..Count
recupera a contagem de chaves do registro.
A variável $keyCount
agora contém o total de chaves do registro dentro do caminho especificado.
Código de Exemplo Completo
Aqui está o script completo do PowerShell:
# Step 1: Access the registry key
$registryPath = "HKLM:\Software\YourRegistryKeyPath"
$registryKey = Get-Item -LiteralPath $registryPath
# Step 2: Measure the registry key count
$keyCount = (Get-ChildItem -Path $registryKey.PSPath).Count
# Step 3: Display the result
Write-Host "Number of registry keys: $keyCount"
Substitua "HKLM:\Software\SeuCaminhoChaveRegistro"
pelo caminho real da chave de registro que você deseja contar e execute o script para contar as chaves do registro.
Usando Measure-Object para Contar Itens
Quando usado com arrays, Measure-Object
conta eficientemente os itens dentro do array.
Aqui está como contar itens em um array usando Measure-Object
:
Passo 1: Criar um Array
Comece definindo um array que contenha os itens que você deseja contar. Você pode criar um array manualmente ou usar cmdlets ou funções para preenchê-lo. Por exemplo, vamos criar um array simples:
$myArray = 1, 2, 3, 4, 5
Neste array, temos cinco itens (números de 1 a 5) que queremos contar.
Passo 2: Usar Measure-Object
Aplique o cmdlet Measure-Object
para contar os itens no array:
$itemCount = ($myArray | Measure-Object).Count
Neste comando:
$myArray
é o array que você deseja contar.Measure-Object
processa o array e fornece informações sobre ele..Count
recupera a contagem de itens dentro do array.
A variável $itemCount
agora contém o total de itens no array.
Código de Exemplo
Aqui está o script completo do PowerShell:
# Step 1: Create an array
$myArray = 1, 2, 3, 4, 5
# Step 2: Use Measure-Object to count items
$itemCount = ($myArray | Measure-Object).Count
# Step 3: Display the result
Write-Host "Number of items in the array: $itemCount"
Execute o script e ele contará os itens no array e exibirá a contagem.
Usando Measure-Object para Contar Linhas
Para contar linhas em uma string usando Measure-Object
, siga estas etapas:
Passo 1: Criar uma String
Comece definindo uma string do PowerShell que contém o texto para o qual você deseja contar as linhas. Esta string pode ser criada manualmente ou obtida de várias fontes, como arquivos, entrada do usuário ou solicitações da web. Aqui está uma string de exemplo:
$text = @"
This is line 1.
This is line 2.
This is line 3.
"@
Neste comando:
$text
é a string para a qual você deseja contar as linhas.Measure-Object
processa a string e fornece informações sobre a contagem das linhas.-Line
especifica que queremos contar as linhas..Lines
recupera a contagem de linhas da medição.
A variável $lineCount
agora contém o total de linhas na string.
Passo 3: Exibir o Resultado
Para ver a contagem de linhas, você pode exibir o valor armazenado na variável $lineCount
:
Write-Host "Number of lines in the string: $lineCount"
Este comando imprime uma mensagem que inclui a contagem de linhas da string.
Código de Exemplo
Aqui está o script completo do PowerShell:
# Step 1: Create a string
$text = @"
This is line 1.
This is line 2.
This is line 3.
"@
# Step 2: Use Measure-Object to count lines
$lineCount = ($text | Measure-Object -Line).Lines
# Step 3: Display the result
Write-Host "Number of lines in the string: $lineCount"
Saída:
Number of lines in the string: 3
Execute o script e ele contará as linhas na string e exibirá a contagem de linhas.
Usando Measure-Object para Contar Caracteres
Para contar caracteres em uma string usando Measure-Object
, siga estas etapas:
Passo 1: Criar uma String
Comece definindo uma string do PowerShell que contém o texto para o qual você deseja contar os caracteres. Esta string pode ser criada manualmente ou obtida de várias fontes, como entrada do usuário ou arquivos de dados. Aqui está uma string de exemplo:
$text = "Hello, DelftStack!"
Neste comando:
$text
é a string para a qual você deseja contar os caracteres.Measure-Object
processa a string e fornece informações sobre a contagem dos caracteres.-Character
especifica que queremos contar caracteres..Characters
recupera a contagem de caracteres da medição.
A variável $charCount
agora contém o total de caracteres na string.
Passo 3: Exibir o Resultado
Para ver a contagem de caracteres, você pode exibir o valor armazenado na variável $charCount
:
Write-Host "Number of characters in the string: $charCount"
Este comando imprime uma mensagem que inclui a contagem de caracteres da string.
Código de Exemplo
Aqui está o script completo do PowerShell:
# Step 1: Create a string
$text = "Hello, DelftStack!"
# Step 2: Use Measure-Object to count characters
$charCount = ($text | Measure-Object -Character).Characters
# Step 3: Display the result
Write-Host "Number of characters in the string: $charCount"
Saída:
Number of characters in the string: 18
Executar este script contará os caracteres na string e exibirá a contagem de caracteres.
Conclusão
Neste artigo, exploramos duas ferramentas essenciais no PowerShell: o operador Count
e o cmdlet Measure-Object
.
Essas ferramentas permitem que você conte e meça objetos de forma eficiente dentro de arrays ou coleções, tornando o PowerShell uma solução versátil para análise e gerenciamento de dados.
Ao seguir as instruções passo a passo e exemplos fornecidos neste artigo, você pode aplicar com confiança tanto o operador Count
quanto o cmdlet Measure-Object
em seus scripts do PowerShell.
Seja você trabalhando com arquivos, chaves de registro, processos, arrays ou strings, essas ferramentas são indispensáveis para suas empreitadas de scripting no PowerShell.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn