Como obter o caminho completo dos arquivos no PowerShell
-
Use
Get-ChildItem
para Obter o Caminho Completo dos Arquivos no PowerShell -
Use
Select-Object
para Obter o Caminho Completo dos Arquivos no PowerShell -
Use
Format-Table
para Obter o Caminho Completo dos Arquivos no PowerShell -
Use o Loop
foreach
para Obter o Caminho Completo dos Arquivos no PowerShell -
Use
Format-List
para Obter o Caminho Completo dos Arquivos no PowerShell - Conclusão

O PowerShell possui vários cmdlets para gerenciar os arquivos no sistema. Você pode criar, copiar, mover, renomear e excluir arquivos usando o PowerShell.
Você também pode pesquisar arquivos e verificar a existência de um arquivo no PowerShell. Um caminho de arquivo indica a localização do arquivo no sistema.
Este tutorial apresentará diferentes métodos para obter o caminho completo dos arquivos no PowerShell.
Use Get-ChildItem
para Obter o Caminho Completo dos Arquivos no PowerShell
O cmdlet Get-ChildItem
exibe uma lista de arquivos e diretórios na localização especificada. Você pode usar o parâmetro -Recurse
para listar todos os arquivos e diretórios recursivamente.
Ele também mostra os subdiretórios e seus arquivos. Isso é útil para pesquisa de arquivos recursiva no PowerShell.
Essa abordagem é comumente usada em cenários onde você precisa realizar operações em um conjunto de arquivos espalhados por uma hierarquia de pastas, como pesquisas de arquivos, processamento em lote ou tarefas de organização de dados.
Exemplo:
Get-ChildItem -Path C:\ExampleDirectory -Filter *.txt -Recurse
Começamos designando nosso diretório raiz com -Path C:\ExampleDirectory
. Esta escolha estabelece o ponto de partida da nossa pesquisa, garantindo que estamos olhando no lugar certo.
Em seguida, introduzimos o parâmetro -Filter *.txt
. Este é um movimento estratégico da nossa parte, pois reduz significativamente nossa pesquisa apenas para aqueles arquivos que têm extensões .txt
.
Ao fazer isso, evitamos eficientemente uma infinidade de arquivos irrelevantes, tornando nosso script mais focado e mais rápido na execução.
O verdadeiro divisor de águas em nosso script é o parâmetro -Recurse
. É aqui que aproveitamos a capacidade do PowerShell de mergulhar nas estruturas de diretórios.
Com -Recurse
, não estamos apenas percorrendo a superfície de C:\ExampleDirectory
; estamos explorando cada canto e recanto, cada subdiretório, não importa o quão profundamente aninhado ele esteja.
Saída:
Você pode obter o caminho completo do arquivo encadeando o comando para %{$_.FullName}
.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Filter sample.txt -Recurse | % { $_.FullName }
Saída:
Ou, você pode usar este comando para obter todos os arquivos com a extensão .txt
e seus caminhos na localização especificada.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Recurse | where { $_.extension -eq ".txt" } | % { $_.FullName }
Saída:
Use Select-Object
para Obter o Caminho Completo dos Arquivos no PowerShell
Um método semelhante será utilizado, mas usaremos o cmdlet Select-Object
com o comando Get-ChildItem
para obter o caminho completo dos arquivos no PowerShell.
O cmdlet Select-Object
seleciona propriedades especificadas de um objeto ou conjunto de objetos. Essa técnica é particularmente útil em cenários onde você precisa auditar sistemas de arquivos, gerenciar dados ou realizar operações de limpeza.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Select-Object -ExpandProperty FullName
Por meio deste script, estamos aproveitando o poder combinado de Get-ChildItem
e Select-Object
para localizar e listar eficientemente arquivos .txt
. Começando nossa pesquisa a partir de ExampleDirectory\
, garantimos que todos os subdiretórios relevantes sejam incluídos.
O -Filter *.txt
é um componente crucial, permitindo que nos concentremos apenas em arquivos .txt
, assim otimizando nossa pesquisa.
Ao empregar -Recurse
, não estamos apenas arranhando a superfície; estamos mergulhando profundamente em cada subdiretório, garantindo que nenhum arquivo seja negligenciado. A mágica acontece com | Select-Object -ExpandProperty FullName
, que refina nossa saída para mostrar apenas o que é essencial – os caminhos completos dos arquivos.
Saída:
Use Format-Table
para Obter o Caminho Completo dos Arquivos no PowerShell
Da mesma forma, você pode usar Format-Table
para obter o caminho completo dos arquivos no PowerShell. O cmdlet Format-Table
formata a saída como uma tabela com as propriedades selecionadas de um objeto.
O cmdlet Get-ChildItem
, quando combinado com Format-Table
, se torna uma ferramenta poderosa não apenas para recuperar caminhos de arquivos, mas também para apresentá-los em um formato organizado e legível. Esse método é particularmente útil para aqueles que precisam avaliar e relatar rapidamente a estrutura de seu sistema de arquivos.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Format-Table FullName
Neste script, utilizamos estrategicamente o Get-ChildItem
para vasculhar ExampleDirectory\
e seus subdiretórios em busca de arquivos .txt
. O parâmetro -Filter *.txt
é fundamental, pois garante que nossa pesquisa seja focada e eficiente, ignorando tipos de arquivo irrelevantes.
A opção -Recurse
é crucial para uma busca completa, garantindo que nenhum subdiretório seja deixado inexplorado.
Após a pesquisa, usamos | Format-Table FullName
para transformar nossas descobertas em uma tabela bem organizada. Isso não apenas aumenta a legibilidade, mas também fornece uma visão clara e estruturada dos caminhos completos.
Saída:
Use o Loop foreach
para Obter o Caminho Completo dos Arquivos no PowerShell
O loop foreach
também é conhecido como a declaração foreach
no PowerShell. É uma construção da linguagem para percorrer uma série de valores em uma coleção de arrays, objetos, strings, números, etc.
Você pode executar um ou mais comandos contra cada item em um array dentro do loop foreach
.
Exemplo:
Get-ChildItem -Path ExampleDirectory\*.txt -Recurse | foreach { "$_" }
Neste script, começamos implantando o Get-ChildItem
para pesquisar meticulosamente ExampleDirectory\
em busca de arquivos .txt
.
A inclusão de -Recurse
garante uma busca abrangente em todas as camadas de subdiretórios. Cada arquivo encontrado é então encadeado em um loop foreach
.
Dentro deste loop, $_
atua como um espaço reservado para o arquivo atual. Ao colocar $_
entre aspas e exibi-lo, instruímos o PowerShell a mostrar o caminho completo de cada arquivo.
Esta abordagem não se trata apenas de recuperar dados; é um passeio metódico por cada arquivo, oferecendo a flexibilidade de adicionar operações mais complexas dentro do loop.
Saída:
O comando acima não funciona com o parâmetro -Filter
. Você pode encadear ao cmdlet Get-Item
no meio para usar o parâmetro -Filter
.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Get-Item | foreach { "$_" }
A adição do Get-Item
no pipeline é um passo chave, pois permite que o parâmetro -Filter
seja efetivamente utilizado, garantindo que apenas arquivos .txt
sejam processados.
Saída:
Get-ChildItem
tem aliases embutidos ls
, dir
e gci
. Você pode executar todos os comandos acima usando qualquer um dos handles no lugar do cmdlet Get-ChildItem
.
Exemplo:
gci -Path ExampleDirectory\ -Filter *.txt -Recurse | % { $_.FullName }
Ao usar aliases, este comando se torna muito mais conciso, enquanto ainda mantém sua funcionalidade. Usuários que vêm de diferentes origens (como Unix/Linux ou linhas de comando mais antigas do Windows) podem achar ls
ou dir
mais familiar.
Saída:
Use Format-List
para Obter o Caminho Completo dos Arquivos no PowerShell
O cmdlet Get-ChildItem
é versátil para navegar e recuperar informações sobre arquivos e diretórios. Quando usado com o parâmetro -Filter
, pode direcionar especificamente arquivos de um determinado tipo, como arquivos .txt
.
Format-List
, por outro lado, exibe as propriedades dos objetos em um formato de lista. Quando combinado com Get-ChildItem
, pode ser usado para apresentar os caminhos dos arquivos em uma lista clara e legível.
Exemplo:
Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Format-List FullName
Em nosso código, usamos Get-ChildItem
para pesquisar minuciosamente ExampleDirectory\
e seus subdiretórios (-Recurse
) em busca de arquivos com uma extensão .txt
(-Filter *.txt
). Cada arquivo descoberto é então transferido de forma tranquila via pipeline (|
) para o cmdlet Format-List
.
Nos concentramos em extrair a propriedade FullName
de cada arquivo, representando seu caminho completo. Este método é particularmente eficaz para criar uma lista de caminhos de arquivos bem organizada e legível.
Saída:
Conclusão
Para encerrar, o PowerShell oferece uma infinidade de cmdlets para gerenciamento eficiente de arquivos. Neste artigo, exploramos vários métodos para recuperar o caminho completo dos arquivos usando PowerShell, aproveitando particularmente o cmdlet Get-ChildItem
em combinação com outros cmdlets como Format-List
, Select-Object
, e Format-Table
.
Essas técnicas são inestimáveis para tarefas que envolvem auditorias de sistemas de arquivos, gerenciamento de dados e processamento em lote. Cada método que discutimos oferece uma abordagem única para lidar com caminhos de arquivos, seja para filtrar tipos de arquivos específicos, listar caminhos em uma tabela formatada, ou iterar por arquivos com um loop foreach
.
Para leitores que desejam aprofundar sua expertise em PowerShell, os próximos passos podem envolver a exploração de técnicas mais avançadas de manipulação de arquivos, aprofundamento em scripts PowerShell para automação, ou até a integração de comandos do PowerShell com outras ferramentas e scripts para fluxos de trabalho mais complexos.
Artigo relacionado - PowerShell File
- Como Armazenar o Conteúdo de um Arquivo de Texto em Variável Usando PowerShell
- Como criar um arquivo de texto usando o Windows PowerShell
- Como Desbloquear Arquivos Usando PowerShell
- Como encontrar arquivos com extensão no PowerShell
- Como extrair o nome do arquivo de um caminho usando PowerShell
- Como Fazer o Upload de Arquivos com FTP no PowerShell