Variáveis PowerShell e Arrays

0 Comments

no artigo anterior, chamado Tutorial PowerShell Scripting para iniciantes, nós exploramos como usar a consola PowerShell para executar scripts e aprendemos o que são cmdlets, como obter suas propriedades e como usar pipes para passar dados de um cmdlet para outro.

neste artigo, vamos passar para variáveis e arrays, incluindo o que eles são e como podemos criá-los, removê-los e alterá-los.,i>variáveis de Lista

  • Definir a variável
  • Obter variável
  • Imprimir variável
  • Limpar variável
  • Remover variável
  • PowerShell Matrizes
    • Array Lista
    • Array Index
    • Matrizes Multidimensionais
  • PowerShell Matriz Exemplos
    • Tipo de matriz
    • Adicione a matriz
    • Array de comprimento
    • Remover o item do array
    • Array contém
    • Limpar matriz
    • Impressão de matriz
    • Loop através de uma matriz
  • PowerShell Variáveis

    Uma variável é uma unidade de memória em que os valores são armazenados., Uma variável em PowerShell começa com ” $ ” (símbolo do dólar) e seu nome pode conter quaisquer letras, números e sublinhados. Para atribuir um valor a uma variável, usamos o operador”=”. Para mostrar o valor de uma variável, basta digitar a variável.,

    Se você adicionar um número a uma seqüência de caracteres, o número torna-se automaticamente uma seqüência de caracteres:

    $var1 = "Netwrix"$var2 = 2018$var3 = $var1 + $var2$var3

    Tipos de Variáveis

    O PowerShell tipo de variável é definido automaticamente com base no valor que você atribuir a ele, mas você também pode atribuir o tipo manualmente:

    $var1 = "Netwrix"

    Para saber o tipo de uma variável, podemos usar o “GetType ()” parâmetro:

    $var1 = "Netwrix"$var1.GetType().FullName

    Como podemos ver, o nosso $var1 variável tem o Sistema”.,String ” type.

    Aqui estão descrições de todos os tipos de variáveis PowerShell:

    Você provavelmente já entendeu que você pode escrever para a variável não só algum valor definido e notou o sistema de classes.Objecto na mesa. Nesta variável você pode escrever o resultado de qualquer cmdlet.

    variable Scope

    the variable scope in PowerShell can be either local or global. Por padrão, uma variável tem um escopo local., Uma variável é limitada pelo seu escopo atual; por exemplo, uma variável local pode estar disponível em uma função atual ou script, enquanto uma variável global está ativa ao longo da sessão PowerShell atual. Para indicar uma variável global, use o formato $Global: variable = value, como ilustrado no seguinte comando:

    $Global:var4 = 12

    PowerShell Variable Examples

    List variables

    para listar todas as variáveis disponíveis, execute a variável ls:* comando., Aqui está um exemplo da saída:

    Set variable

    você pode criar uma variável simplesmente atribuindo-lhe um valor. Por exemplo, o comando $var4 = “variableexample” cria uma variável chamada $var4 e atribui-lhe um valor de cadeia de caracteres. As aspas duplas (” “) indicam que um valor de cadeia está sendo atribuído à variável.

    obter variável

    isto é muito semelhante ao comando da variável list, usando apenas outro cmdlet:

    Get-Variable | Out-String

    imprimir variável

    pode indicar uma variável A.txt .ficheiro csv ou HTML.

    para escrever para A.,txt file, use o comando Out-File:

    $var5 = "Hello World!"$var5 | Out-File C:\scripts\Hello_World.txt

    para exportar dados para A.,”d2d13912ee”>

    E escrever para um ficheiro HTML, use o cmdlet ConvertTo-Html comando:

    $var6 = Get-Process$var6 | ConvertTo-Html -Property Name, Path > C:\scripts\processes.html

    Para ler um arquivo exportado, podemos utilizar o cmdlet Get-Content:

    Get-Content C:\scripts\processes.csv

    Limpar variável

    Para limpar o conteúdo de uma variável, use o cmdlet Clear-Variable:

    Clear-Variable -name var6 #without $

    Remover variável

    Para remover completamente uma variável, use o cmdlet Remove-Variável cmdlet:

    Remove-Variable -name var6 #without $

    PowerShell Matrizes

    Uma matriz é um tipo de uma variável., É um conjunto de componentes (elementos array) dispostos em uma determinada ordem. Os elementos do array são numerados sequencialmente, e você acessar um elemento usando seu número de índice.

    ao criar arrays, esteja ciente do comportamento de PowerShell padrão. Se você criar um array com vários elementos, PowerShell irá criar um array, como você pretende. Por exemplo, coloque alguns números em um array e, em seguida, verifique o tipo de dados da variável:

    $array1 = 1, 2, 3$array1.GetType()

    como você pode ver, neste caso, PowerShell criou um array (Sistema.Matriz).,

    no Entanto, se você colocar um valor em uma variável, então PowerShell não vai criar uma matriz:

    $array1 = 1$array1.GetType()

    claro, você não pode sempre dizer antecipadamente quantos objetos serão recebidos como resultado da execução de um determinado comando, então, você precisa ter o código que será sempre tratar o resultado como uma matriz.

    Você pode fazer isso de muitas maneiras. Por exemplo, você pode usar o”, ” operador. Se uma vírgula é usada como um operador binário, então um array normal é criado; se for usado como um operador unário, o array tem apenas um elemento., Por exemplo, aqui está como nós podemos obter uma matriz consiste de um elemento:

    $array1 = ,1$array1.GetType()

    Alternativamente, você pode especificar explicitamente o tipo de dados para uma variável:

    ]$array1 = 1$array1.GetType()

    Finalmente, você também pode criar uma matriz usando subexpressão operador “@”, que constitui uma matriz, mesmo se não os objetos especificados. É muito conveniente inicializar uma variável como um array, e então adicionar objetos a ele sem se preocupar com seu número.,

    $array3 = @()$array3.GetType()

    Observe que cada elemento de uma matriz tem o seu próprio tipo de dados, e o tipo de objeto permite-lhe adicionar quaisquer valores para a matriz. Se necessário, você pode restringir os membros do array a um tipo de dados específico — então você está criando um “array digitado”., Por exemplo, você pode especificar que os elementos da matriz deve ser valores inteiros:

    ]$array1 = 1$array1.GetType()

    assim podemos definir o sistema de processos como membros de matriz:

    ]$array1 = Get-Process$array1.GetType()

    Lista de Matriz

    Se você modificar de pesquisa ou uma matriz de freqüência, você pode usar a classe ArrayList, que é projetado para permitir que você facilmente adicionar, remover e procurar por itens em que:

    $array3 = New-Object System.Collections.ArrayList

    Array Index

    Um índice na matriz é um valor, normalmente um inteiro numérico usado para identificar e fazer referência a um elemento de matriz., Os índices Array começam em zero ou um, dependendo da linguagem de programação. As matrizes PowerShell do Windows são baseadas em zero, então para se referir ao primeiro elemento da matriz $var3 (“elemento zero”), você escreveria $var3 .

    $var3 = "first", "second", "third"

    Matrizes Multidimensionais

    matrizes Multidimensionais são variáveis que podem ser usados para armazenar informações em uma tabela sem ter de escrevê-la para uma base de dados real. Parece uma tabela de hash, mas pode armazenar diferentes tipos de informação, tais como strings e inteiros., Na verdade, você pode imaginar um array multidimensional como uma tabela com colunas e linhas, onde cada célula tem seu próprio índice dentro de um ambiente PowerShell.

    PowerShell Matriz Exemplos

    matriz de Classificação

    Se uma matriz contiver apenas um tipo de dados, você pode classificar os valores usando o método de Classificação:

    $array3 | Sort

    Para classificar uma matriz com mais de um tipo de dados, você precisa usar o cmdlet Sort-Object.,

    Adicionar à matriz

    Primeiro, vamos criar uma matriz:

    $array5 = "one", "two", "three", "four", "five"$array5.gettype()

    Para modificar facilmente a nossa matriz, precisamos adicioná-lo para a coleção arraylist:

    $ArrayList1 = $array5$ArrayList1.GetType()

    Como você pode ver, o BaseType mudou e podemos facilmente modificar a nossa matriz de agora:

    $ArrayList1.Add("six")$ArrayList1.Remove("three")$ArrayList1

    Array de comprimento

    Para retornar o número de elementos na matriz, use .,comprimento do parâmetro:

    $array6 = 1,2,3,4,5,6echo $array6.Length

    Remover o item do array

    Para remover um item, utilize o .Retire o comando., Novamente, é melhor usar um arraylist:

    $ArrayList1 = $array5$ArrayList1.GetType()$ArrayList1.Remove("three")$ArrayList1

    Array contém

    Se você quiser ver se qualquer um dos elementos em uma matriz que contém um determinado valor, use o método:

    $array7 = 1,2,5,8,3,4,5$array7.Contains(2)$array7.Contains(12)

    Limpar matriz

    embora a maioria das operações de matriz no PowerShell são relativamente fácil de realizar, não é simplesmente maneira para excluir uma matriz., A maneira mais fácil de se livrar de uma matriz inteira é atribuir a variável $valor nulo para ele:

    $array7 = $null$array7

    Para verificar se a nossa matriz é nulo, execute o script a seguir:

    $array7 -eq $null

    No PowerShell, se uma variável é null, você não pode aplicar quaisquer métodos para isso.

    print array

    para imprimir um array inteiro, podemos usar os mesmos métodos descritos para imprimir variáveis.

    para escrever para A.txt file, use o comando Out-File:

    $var5 | Out-File C:\scripts\array.txt

    para exportar para A.,arquivo csv, use o comando Export-Csv:

    $var6 | Export-Csv -Path C:\scripts\array.csv

    E escrever para um ficheiro HTML, use o cmdlet ConvertTo-Html comando:

    $var6 | ConvertTo-Html > C:\scripts\processes.html

    Loop através de uma matriz

    para lidar com cada elemento em uma matriz, um após o outro, precisamos fazer um laço usando o foreach operador. Por exemplo, se declaramos uma matriz de seqüência de caracteres e deseja contar com o comprimento de cada palavra na matriz, devemos executar o script a seguir:

    $array8 = @("Earth","Mercury","Venus","Jupiter","Saturn","Mars", "Neptune", "Pluto") foreach ($array in $array8) { "$array = " + $array.length }

    neste artigo, aprendemos sobre as variáveis e seus tipos., Então nós exploramos um tipo de variável — o array— em detalhe e aprendemos a jogar com ele. Com esta informação, você está pronto para mergulhar em PowerShell ainda mais profundo.

    Jeff é um diretor de Engenharia de Soluções Globais em Netwrix. Ele é um blogueiro, palestrante e apresentador de longa data da Netwrix. No Blog Netwrix, Jeff compartilha lifehacks, dicas e truques que podem melhorar drasticamente sua experiência de administração do sistema.


    Deixe uma resposta

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