Skip to content
Natuurondernemer
    Dezembro 9, 2020 by admin

    Introdução à utilização de ficheiros de texto com PowerShell

    Introdução à utilização de ficheiros de texto com PowerShell
    Dezembro 9, 2020 by admin

    Utilizar PowerShell cmdlets para aprender o básico: como recuperar texto de ficheiros de texto e como encontrar texto em ficheiros de texto.

    Uma das tarefas mais prevalentes que um profissional de TI deve fazer é criar, ler ou alterar ficheiros de texto de alguma forma. Os ficheiros de texto são representados em milhares de formatos diferentes, desde simples ficheiros TXT a XML, passando por vários formatos proprietários. Uma vez que os ficheiros de texto podem ser estruturados de forma tão variada, os fornecedores adoptaram o ficheiro de texto simples como meio de definir scripts, armazenar valores de configuração e consultas SQL e muito mais. A única diferença estrutural num ficheiro TXT e num ficheiro SQL, por exemplo, é apenas a extensão do ficheiro. O conteúdo é apenas texto estruturado de uma forma diferente e pré-definida.

    PowerShell tem muitas formas diferentes de gerir todos estes tipos de ficheiro de texto, mas neste artigo vamos manter a abordagem mais genérica: Vamos concentrar-nos na leitura e na não-estruturação do texto. Isto significa que não há ficheiros XML, não há ficheiros de consulta SQL, nem sequer os próprios scripts PowerShell. Vamos concentrar-nos em dois tópicos:

    1. Como recuperar texto de ficheiros de texto.
    2. Como encontrar texto em ficheiros de texto.

    Como recuperar texto de ficheiros de texto

    Uma das tarefas mais fáceis é recuperar todo o texto de um ficheiro de texto existente. Para a maioria dos ficheiros de texto, um scripter PowerShell pode utilizar a Get-Content cmdlet. O Get-Content cmdlet é um PowerShell cmdlet muito popular que recuperará todo o texto de um ficheiro de texto especificado pelo parâmetro Path.

    No mais simples, é possível passar o parâmetro Path com o caminho do ficheiro para um ficheiro de texto como argumento para o Get-Content cmdlet. Digamos que tenho um ficheiro chamado MyText.txt. Neste ficheiro de texto tenho as três linhas mostradas abaixo e gostaria de obter o conteúdo do MyText.txt com um script PowerShell.

    Para isso, posso usar Get-Content com o parâmetro Path.

    Verá que o resultado foi todo o conteúdo de MyText.txt. Mas e se apenas quisesse ver um determinado número de linha? Por defeito, Get-Content lê cada linha de um ficheiro de texto e cria um array como saída com cada linha do texto como um elemento desse array. Isto significa que posso facilmente escolher diferentes elementos dessa matriz, especificando o número de índice da matriz. Neste exemplo, o número de índice do array é igual ao número de linha do ficheiro de texto.

    No exemplo acima, estou a mostrar que o resultado de Get-Content é um tipo de System.Array e que ao utilizar números de índice entre parênteses posso escolher quais as linhas que quero que saiam para a minha consola. Uma coisa a notar é que se não estiver familiarizado com os arrays e o seu esquema de numeração, o primeiro elemento de um array começa com um zero. É por isso que posso utilizar o número um para escolher a segunda linha e o número dois para escolher a terceira linha. Isto é importante para lembrar.

    Como encontrar texto em ficheiros de texto

    Após ser capaz de descobrir como encontrar todo o texto em ficheiros de texto ou certos números de linha, outra tarefa popular é encontrar texto específico dentro dos próprios ficheiros. Existem algumas formas diferentes de o fazer, mas a mais fácil é utilizar a cmdlet Where-Object. A cmdlet Where-Object é uma popular cmdlet que lhe permite “filtrar” várias informações da saída de outros cmdlet; neste exemplo, está a filtrar informações da cmdlet Get-Content.

    Usando o nosso ficheiro de texto anterior como exemplo, digamos que quero ver se esse ficheiro de texto contém as palavras “ficheiro de texto” juntas nele. Para tal, utilizarei Where-Object.

    Ao utilizar Where-Object, tenho de utilizar a variável $_. Esta é uma variável especial em PowerShell conhecida como a variável pipeline. Neste exemplo, representa cada linha do ficheiro de texto, uma vez que vem de Get-Content. Estou então a utilizar o operador semelhante e a utilizar wildcards para ver se a string “ficheiro de texto” existe em qualquer uma das linhas do ficheiro de texto. Parece que encontrou duas linhas que correspondem à string.

    Se quiser saber mais sobre como encontrar texto em ficheiros de texto, sugiro que procure nos operadores de comparação do PowerShell. Usando o operador de comparação, por exemplo, usa regex, que é muito mais poderoso do que o operador semelhante e permite encontrar praticamente qualquer padrão que se possa pensar num ficheiro de texto.

    Previous articleNicole Curtis BioNext article Cincinnati, OH - Union Terminal (CIN)

    Deixe uma resposta Cancelar resposta

    O seu endereço de email não será publicado. Campos obrigatórios marcados com *

    Artigos recentes

    • Como montar um mineiro Bitcoin ASIC
    • Chris Martin tem aniversário na Disneylândia com Dakota Johnson
    • O que é um Site de Superfundo?
    • Echolalia: Os factos para além da “conversa de papagaio”, escrita, e eco
    • Lord of the Flies Quotes
    • Um Guia para Principiantes de Pegging
    • 42 Receitas de Sopa de Crockpot Saudável
    • 3 riscos surpreendentes de má postura
    • Tina Fey Biografia
    • O que são Correntes Oceânicas?

    Arquivo

    • Abril 2021
    • Março 2021
    • Fevereiro 2021
    • Janeiro 2021
    • Dezembro 2020
    • Novembro 2020
    • Outubro 2020
    • Setembro 2020
    • Agosto 2020
    • Julho 2020
    • Junho 2020
    • Maio 2020
    • Abril 2020
    • DeutschDeutsch
    • NederlandsNederlands
    • EspañolEspañol
    • FrançaisFrançais
    • PortuguêsPortuguês
    • ItalianoItaliano
    • PolskiPolski

    Meta

    • Iniciar sessão
    • Feed de entradas
    • Feed de comentários
    • WordPress.org
    Posterity WordPress Theme