PowerShell Select-string cmdlet

PowerShell Select-string cmdlet
O seleção é um cmdlet suportado pela PowerShell para selecionar um texto/padrão em uma string. A corda de seleção também é chamada de equivalente a Grep, onde Grep é um comando baseado em UNIX para procurar padrões. Com este comando, você pode pesquisar todas as correspondências disponíveis ou também pode adicionar um limite das correspondências usando a lista de parâmetros suportados por ele.

Esta posta.

Como usar o PowerShell Select-string cmdlet

No PowerShell, o cmdlet de seleção pode ser usado para procurar um único padrão ou vários padrões no arquivo ou string. A sintaxe a seguir é usada para consultar o CMDLET SELECT-STRING:

Selecionar cordas

Os seguintes parâmetros podem ser usados ​​com o cmdlet de seleção:

  • Padrão: Identifica o texto a ser selecionado no arquivo.
  • Caminho: Refere -se ao caminho do arquivo.
  • Maiúsculas e minúsculas: Usado para corresponder aos termos combinando o caso da carta.
  • Não combina: Utilizado para obter o resultado que não contém o texto especificado \ padrão.
  • AllMatches: especifica encontrar mais de uma correspondência em cada linha do arquivo.

Exemplo 1: Para selecionar o padrão específico (texto) em um arquivo

O código de amostra é o seguinte para selecionar o padrão (i.e., texto/string) no “Amostra100.CSV" arquivo. Em primeiro lugar, o caminho absoluto do “Amostra100.CSV"É dado após o"-CaminhoParâmetro. Depois, o padrão “Marca”Está definido usando o parâmetro“-Padrão”:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "

O padrão era “Marca”E observa-se que a corda de seleção imprimiu a linha (junto com o número da linha) que contém o“Marca" iniciar.

Exemplo 2: Para selecionar os vários padrões (texto) em um arquivo

Você pode selecionar ou encontrar vários padrões dentro do arquivo. Para fazer isso, o texto a ser pesquisado é fornecido após o “-PadrãoParâmetro. O seguinte comando procura o “Marca" e "Peter”Palavras -chave dentro do“Amostra.CSV" arquivo:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "

Como você pode ver, essas linhas são impressas que contêm Mark ou Peter.

Exemplo 3: Para selecionar apenas registros limitados de padrões especificados (texto) em um arquivo

O cmdlet de seleção pode ser usado para pesquisar o padrão específico em um arquivo, mas apenas o número limitado de instâncias seria pesquisado. No exemplo do parado, o “.CSV”O arquivo está sendo filtrado para o padrão“Marca”. No entanto, o limite está definido como 2 usando o “-PrimeiroParâmetro:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "| Select -object * -primeiro 2

Na saída acima, as duas primeiras ocorrências do “Marca”A palavra -chave é exibida no terminal PowerShell.

Exemplo 4: Para selecionar os padrões em colunas especificadas

O cmdlet de seleção pode ser utilizado com o objeto de seleção para selecionar corresponder ao padrão e retornar propriedades específicas da linha que contém esses padrões. Para isso, a correspondência de padrões é especificada no cmdlet de seleção e os filtros serão aplicados no objeto de seleção.

No nosso caso, o seguinte exemplo de comando exerce o “Selecionar cordas"Cmdlet para combinar com os padrões"Peter" ou "Philem um Arquivo CSV. Este comando de seleção é então canalizado com o Selecionar objeto cmdlet para obter o Linho, padrão, nome do arquivo, e Linha que contém os padrões Peter ou Phil:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Peter "," Phil "| Linho do objeto Select, padrão, nome do arquivo, linha

Observa -se a partir da saída que o linho, o padrão, o nome do arquivo e as linhas são impressos que contêm os padrões, Peter ou Phil.

Exemplo 5: para selecionar os padrões "sensíveis à caixa" (texto) em um arquivo

Você pode combinar um padrão com “-Maiúsculas e minúsculas”Parâmetro para considerar o caso da letra também. O comando de exemplo procura as linhas que contêm “PETER”:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-pattern" Peter "-Casesensitive

Como você pode ver, apenas três registros são impressos que contêm a palavra -chave Peter.

Exemplo 6: para selecionar os padrões inigualáveis ​​(texto) em um arquivo

Com a ajuda do “-Não combina”Parâmetro, podemos selecionar apenas os registros que não correspondem às palavras -chave específicas. No exemplo a seguir, especificamos dois padrões ("Marca" e "Peter") no parâmetro -NotMatch:

Select -string -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "-NotMatch

Como pode ser visto nos registros acima, o registro impresso no console não contém “Marca" nem "Peter”.

Conclusão

Em PowerShell, o cmdlet PowerShell Select-string é utilizado para encontrar o texto/padrão especificado no arquivo. O uso do comando de seleção pode ser aprimorado utilizando diferentes parâmetros (-notmatch, -CaseSensitive) e propriedades (nome do arquivo, linha, padrão). Além disso, você pode estender o uso do cmdlet de seleção usando-o com o objeto de seleção. Você aprendeu o funcionamento do cmdlet de seleção e seus casos de uso em vários cenários.