Listar arquivos em um diretório com PowerShell

List Files Directory With Powershell



PowerShell é uma plataforma de automação e script da Microsoft de código aberto, disponível gratuitamente. Seu objetivo é auxiliar seus usuários na criação de ferramentas e scripts eficientes para ajudá-los a realizar seus trabalhos de forma mais eficaz. Muitas funções e comandos úteis estão disponíveis no PowerShell, que são conhecidos como cmdlets . Esses cmdlets são utilizados para realizar uma operação específica, como executar ping em um computador remoto, ler um arquivo específico, etc.

Quando você deseja saber quais arquivos estão em seu sistema, você certamente precisa listá-los. Muitos usuários podem acreditar que explorar arquivos na Interface Gráfica do Usuário (GUI) é muito mais conveniente do que mexer na linha de comando ou no PowerShell. Mas isso não é verdade. Listar arquivos é uma operação que o PowerShell faz sem esforço. Se você tiver algum problema listando arquivos em um diretório com PowerShell , então esse post veio para te resgatar! PowerShell utiliza o Get-ChildItem comando para listar arquivos presentes em um diretório. Vamos saber mais sobre este comando louvável.







O que é Get-ChildItem?

No PowerShell, Get-ChildItem executa a mesma função que para você no prompt de comando do Windows. Este cmdlet recupera dados de um local específico. Ele também lista objetos ou itens de um ou mais locais de arquivo fornecidos. Os itens obterão seus itens filhos do contêiner. Registro e Arquivos são chamados de itens filho nas subpastas do PowerShell. Como o dir / s , se quiser recuperar dados dos contêineres filho, você deve usar o -Recurso parâmetro.



Um sistema de arquivos pode ser qualquer coisa, desde um armazenamento de certificados até um diretório de caminho compartilhado ou local do hive do registro. Quando você utiliza Get-ChildItem em um sistema, ele lista arquivos, diretórios e subdiretórios. No outro caso, quando você o usa em um diretório, este comando retorna uma lista de arquivos e subdiretórios que vêm sob ele. Get-ChildItem não mostra diretórios vazios quando -Recurso ou -Profundidade opções são usadas em um comando Get-ChildItem.



Operadores usados ​​com o comando Get-ChildItem no PowerShell

A seguir estão os operadores usados ​​com o cmdlet Get-ChildItem:





  • , para OR
  • + Para e
  • ! por não

Atributos do comando Get-ChildItem no PowerShell

Aqui estão alguns dos atributos do cmdlet Get-ChildItem, que são utilizados para listar arquivos ou pastas de acordo com os atributos especificados.

  • ligação ( a )
  • sistema ( s )
  • diretório ( d )
  • escondido ( h )
  • somente leitura ( r )
  • arquivo ( para )

Vamos verificar alguns exemplos de arquivos de listagem no PowerShell.



Exemplo 1: Listando itens filho em um diretório específico usando o parâmetro -Path

Se você deseja listar arquivos e diretórios de um diretório específico, utilize o -Caminho parâmetro no Get-ChildItem comando. Esta opção ajudará o PowerShell a listar todos os itens filho do diretório especificado. o -Caminho O parâmetro também é utilizado para definir os caminhos de um ou mais locais de arquivos. Se você não mencionar explicitamente o caminho do diretório, o diretório de trabalho atual será o local padrão.

No exemplo fornecido a seguir, o PowerShell listará todos os arquivos e pastas filho presentes no E: vbox diretório:

> Get-ChildItem -CaminhoE: vbox

Se você não adicionar o -Caminho parâmetro, o Get-ChildItem cmdlet terá o primeiro parâmetro como o caminho do diretório. A execução deste comando mostrará a mesma saída:

> Get-ChildItemE: vbox

Exemplo 2: Listando itens filho e seus subdiretórios usando o parâmetro -Recurse

o -Recurso é o parâmetro que procura os arquivos e pastas nos subdiretórios do caminho especificado. Se você deseja armazenar todas essas informações, utilize um contêiner do PowerShell, salve os detalhes como Nome, Comprimento e Nome completo dos itens filho. Depois disso, o Get-ChildItem O comando recuperará todas essas informações do contêiner e listará os arquivos, diretórios e subdiretórios dos itens filhos.

> Get-ChildItem -Recurso 'E: software' | Onde { ! $ _ .PSIsContainer} | SelecioneNome,Nome completo,Comprimento

Você pode recuperar as informações de acordo com seus requisitos. Aqui, nós excluímos o Comprimento dos arquivos e diretórios:

> Get-ChildItem -Recurso 'E: vbox' | Onde { $ _ .PSIsContainer} | SelecioneNome,Nome completo

Exemplo 3: Listando arquivos em um diretório usando o parâmetro -Exclude

o -Excluir é um parâmetro de string que exclui diretórios e arquivos com alguma extensão específica. Ele é especificado após adicionar o caminho do diretório. Caracteres curinga também são utilizados para essa finalidade, como *.TXT é usado no exemplo fornecido a seguir:

> Get-ChildItem -Recurso 'E: UWT4' -Excluir *.TXT| Onde {! $ _ .PSIsContainer} | SelecioneNome,Nome completo

A execução deste comando listará todos os diretórios e arquivos, exceto para os arquivos que têm o .TXT extensão.

Exemplo 4: Listando arquivos em um diretório usando o parâmetro -Include

o -Incluir é um parâmetro de string utilizado no Get-ChildItem cmdlet para listar arquivos e pastas específicos. Você pode especificar mais de uma extensão com o -Incluir opção, separada por uma vírgula. Por exemplo, incluiremos todos os arquivos com .TXT extensão no C: Windows System32 diretório:

> Get-ChildItem -CaminhoC: Windows System32 * -Incluir *.TXT

Exemplo 5: Listando arquivos em um diretório usando o parâmetro -Descending

Enquanto listando os arquivos no PowerShell , você pode classificá-los com base em vários atributos, como o nome dos arquivos ou o comprimento dos arquivos.

No comando fornecido abaixo, o Get-ChildItem imprimirá a lista de arquivos e diretórios classificados em ordem decrescente por seu comprimento:

> Get-ChildItem -CaminhoE: UWT4-Recurso -Arquivo | ordenarcomprimento-Descendente

Exemplo 6: Listando arquivos em um diretório usando o parâmetro -Depth

Se você deseja controlar a recursão dos diretórios, use o -Profundidade parâmetro em seu Get-ChildItem comando. Por padrão, quando você executa o Get-ChildItem cmdlet, ele lista todos os itens filho com seus subdiretórios. Mas, ao adicionar o parâmetro -Depth, você pode listar o nível exato do conteúdo dos subdiretórios.

Por exemplo, se você especificar -Depth 2 no comando Get-ChildItem, o cmdlet listará os subdiretórios de primeiro nível com os subdiretórios de segundo nível.

> Get-ChildItem -CaminhoE: vbox-Recurso -Profundidade 2

Exemplo 7: Contando o número de itens filhos em um diretório

À medida que salvamos mais e mais arquivos em nossos sistemas, é fácil perder o controle de quantos arquivos estão em cada pasta. O comando Get-ChildItem também fornece uma solução para isso.

Mostraremos como o cmdlet Get-ChildItem mede a contagem de objetos do especificado E: vbox diretório.

> (Get-ChildItem -Recurso -CaminhoE: vbox | Medida-Objeto).Contar

Conclusão

PowerShell utiliza o Get-ChildItem comando para listando arquivos de um diretório . o para você no prompt de comando do Windows e Get-ChildItem no PowerShell desempenham a mesma função. Neste artigo, compilamos exemplos para entender os arquivos de listagem no PowerShell. Esses exemplos incluem a listagem de arquivos e pastas de um diretório específico, incluindo ou excluindo alguns arquivos específicos, classificando a lista de arquivos ou controlando a recursão dos diretórios.