Sobre variáveis
- 11/09/2020
- 9 minutos para ler
-
- S
- s
- q
Descrição breve
Descreve como as variáveis armazenam valores que podem ser usados no PowerShell.
Descrição longa
Você pode armazenar todos os tipos de valores nas variáveis do PowerShell. Por exemplo, armazene os resultados de comandos e armazene elementos que são usados em comandos e expressões, como nomes, caminhos, configurações e valores.
Uma variável é uma unidade de memória na qual os valores são armazenados. No PowerShell, as variáveis são representadas por strings de texto que começam com um cifrão ($
), como $a
, $process
ou $my_var
.
Os nomes das variáveis não diferenciam maiúsculas de minúsculas e podem incluir espaços e caracteres especiais. Mas os nomes das variáveis que incluir caracteres especiais e espaços são difíceis de usar e devem ser evitados. Para obter mais informações, consulteNomes de variáveis que incluem caracteres especiais.
Existem vários tipos diferentes de variáveis no PowerShell.
-
Variáveis criadas pelo usuário: variáveis criadas pelo usuário são criadas e mantidas pelo usuário. Por padrão, as variáveis que você cria na linha de comando do PowerShell existem apenas enquanto a janela do PowerShell está aberta. Quando a janela do PowerShell está fechada, as variáveis são excluído. Para salvar uma variável, adicione-a ao seu perfil do PowerShell. Você também pode criar variáveis em scripts com escopo global, script ou local.
-
Va automática riables: variáveis automáticas armazenam o estado do PowerShell. Essas variáveis são criadas pelo PowerShell, e o PowerShell altera seus valores conforme necessário para manter sua precisão. Os usuários não podem alterar o valor dessas variáveis. Por exemplo, a variável
$PSHOME
armazena o caminho para o diretório de instalação do PowerShell.Para obter mais informações, uma lista e uma descrição das variáveis automáticas, consulte about_Automatic_Variables.
-
Variáveis de preferência: as variáveis de preferência armazenam as preferências do usuário para o PowerShell. Essas variáveis são criadas pelo PowerShell e são preenchidas com valores padrão. Os usuários podem alterar o valores dessas variáveis. Por exemplo, a variável
$MaximumHistoryCount
determina o número máximo de entradas no histórico da sessão.Para obter mais informações, uma lista e uma descrição de as variáveis de preferência, consulte about_Preference_Variables.
Trabalhando com variáveis
Para criar uma nova variável, use uma instrução de atribuição para atribuir um valor à variável. não é necessário declarar a variável antes de usá-la. O valor padrão de todas as variáveis é $null
.
Para obter uma lista de todas as variáveis em sua sessão do PowerShell, digite Get-Variable
. Os nomes das variáveis são exibidos sem o sinal de dólar anterior ($
) que é usado para fazer referência às variáveis.
Por exemplo:
As variáveis são úteis para armazenar os resultados dos comandos.
Por exemplo:
Para exiba o valor de uma variável, digite o nome da variável, precedido por um sinal de adolar ($
).
Por exemplo:
Para alterar o valor de uma variável, atribua um novo valor à variável.
Os exemplos a seguir exibem o valor da variável $MyVariable
, altera o valor da variável e, em seguida, exibe o novo valor.
Para excluir o valor de uma variável, use o Clear-Variable
cmdlet ou altere o val ue para $null
.
Para excluir a variável , use Remove-Variableou Remove-Item.
Tipos de variáveis
Você pode armazenar qualquer tipo de objeto em uma variável, incluindo inteiros, strings, arrays e tabelas de hash. E objetos que representam processos, serviços, logs de eventos e computadores.
As variáveis do PowerShell são digitadas livremente, o que significa que não estão limitadas a um tipo específico de objeto. Uma única variável pode até conter uma coleção, ou array, de diferentes tipos de objetos ao mesmo tempo.
O tipo de dados de uma variável é determinado pelos tipos .NET dos valores da variável. Para visualizar o tipo de objeto de uma variável, useGet- Membro.
Por exemplo:
Você pode usar um atributo de tipo e notação de elenco para garantir que uma variável possa conter apenas tipos de objeto específicos ou objetos que podem ser convertidos para aquele tipo.Se você tentar atribuir um valor de outro tipo, o PowerShell tentará converter o valor em seu tipo. Se o tipo não puder ser convertido, a instrução de atribuição falhará.
Para usar notação de conversão, insira um nome de tipo, entre colchetes, antes do nome da variável (no lado esquerdo da instrução de atribuição). O seguinte exemplo cria uma $number
variável que pode conter apenas números inteiros, uma $words
variável que pode conter apenas strings e uma $dates
variável que pode conter apenas objetos DateTime.
Usando variáveis em comandos e expressões
Para usar uma variável em um comando ou expressão, digite o nome da variável, precedido pelo sinal de dólar ($
).
Se o nome da variável e o cifrão não estiverem entre aspas, ou se estiverem entre aspas duplas ("
), t O valor da variável é usado no comando ou expressão.
Se o nome da variável e o cifrão estiverem entre aspas simples ("
), o nome da variável é usado na expressão.
Para obter mais informações sobre o uso de aspas no PowerShell, consulte a página sobre o campo Quoting_Rules.
Este exemplo obtém o valor de $PROFILE
variável, que é o caminho para o arquivo de perfil de usuário do PowerShell no console do PowerShell.
Neste Por exemplo, são mostrados dois comandos que podem abrir o perfil do PowerShell innotepad.exe. O exemplo com aspas duplas ("
) marcas usa a variável “svalue.
Os exemplos a seguir usam aspas simples ("
) marcas que tratam a variável como texto literal.
Nomes de variáveis que incluem caracteres especiais
Os nomes de variáveis começam com um dólar ( $
) assinar e pode incluir caracteres alfanuméricos e especiais. O comprimento do nome da variável é limitado apenas pela memória disponível.
A prática recomendada é que os nomes das variáveis incluam apenas caracteres alfanuméricos e o caractere sublinhado (_
). Nomes de variáveis que incluem espaços e outros caracteres especiais são difíceis de usar e devem ser evitados.
Nomes de variáveis alfanuméricas podem conter esses caracteres :
- caracteres Unicode destas categorias: Lu, Ll, Lt, Lm, L o ou Nd.
- Caráter sublinhado (
_
). - Ponto de interrogação (
?
) caractere.
A lista a seguir contém as descrições da categoria Unicode. Para obter mais informações, consulte UnicodeCategory.
- Lu – UppercaseLetter
- Ll – LowercaseLetter
- Lt – TitlecaseLetter
- Lm – ModifierLetter
- Lo – OtherLetter
- Nd – DecimalDigitNumber
Para criar ou exibir um nome de variável que inclua espaços ou caracteres especiais, coloque o nome da variável entre as curvas caracteres de colchetes ({}
). Os colchetes direcionam o PowerShell a interpretar os caracteres do nome da variável como literais.
Nomes de variáveis de caracteres especiais podem conter estes caracteres:
Por exemplo, o comando a seguir cria a variável chamada save-items
. As chaves rígidas ({}
) são necessárias porque o nome da variável inclui um hífen (-
) caractere especial.
O comando a seguir obtém os itens filhos no diretório representado pelo ProgramFiles(x86)
enviro variável nment.
Para fazer referência a um nome de variável que inclui colchetes, coloque o nome da variável entre colchetes e use o caractere de crase para escapar dos colchetes. Por exemplo, crie uma variável chamada this{value}is
type:
Variáveis e escopo
Por padrão, as variáveis estão disponíveis apenas no escopo em que foram criadas.
Por exemplo, uma variável que você cria em uma função está disponível apenas dentro da função. Uma variável que você cria em um script está disponível apenas dentro do script. Se você usar o código-fonte do script, a variável será adicionada ao escopo atual. Para obter mais informações, consulte about_Scopes.
Você pode usar um modificador de escopo para alterar o escopo padrão da variável. A expressão a seguir cria uma variável chamada Computers
. A variável tem um escopo global, mesmo quando é criada em um script ou função.
Para qualquer script ou comando executado fora da sessão, você precisa do Using
modificador de escopo para incorporar a variável valores do escopo da sessão de chamada, para que o código da sessão possa acessá-los.
Para obter mais informações, consulte about_Remote_Variables.
Salvando variáveis
Variáveis que você cria estão disponíveis apenas na sessão em que você os cria. Eles são perdidos quando você fecha sua sessão.
Para criar a variável em cada sessão do PowerShell que você inicia, adicione a variável ao seu perfil do PowerShell.
Por exemplo, para alterar o valor da variável $VerbosePreference
em cada sessão do PowerShell, adicione o seguinte comando ao seu perfil do PowerShell.
Você pode adicionar este comando para seu perfil do PowerShell abrindo o arquivo $PROFILE
em um editor de texto, como notepad.exe. Para obter mais informações sobre perfis do PowerShell, consulte about_Profiles.
Variável: unidade
O provedor de variável do PowerShell cria uma unidade Variable:
que se parece e age como uma unidade do sistema de arquivos, mas contém as variáveis em sua sessão e seus valores.
Para mudar para a unidade Variable:
, use o seguinte comando:
Para listar os itens e variáveis na unidade Variable:
, use o ou Get-ChildItem
cmdlets.
Para obter o valor de uma variável específica, use a notação do sistema de arquivos para especificar o nome da unidade e o nome da variável. Por exemplo, para obter a $PSCulture
variável automática, use o seguinte comando.
Para exibir mais informações sobre a unidade Variable:
e o provedor PowerShellVariable, digite:
Sintaxe variável com caminhos de provedor
Você pode prefixar um caminho de provedor com o sinal de dólar ($
) e acessar o conteúdo de qualquer provedor que implemente a interface IContentCmdletProvider. // > about_Alias_Provider
Os cmdlets variáveis
O PowerShell inclui um conjunto de cmdlets projetados para gerenciar variáveis.
Para listar os cmdlets, digite:
Para obter ajuda sobre um cmdlet específico, digite:
Nome do cmdlet | Descrição |
---|---|
Clear-Variable |
Exclui o valor de uma variável. |
Get-Variable |
Obtém as variáveis no console atual. |
New-Variable |
Cria uma nova variável. |
Remove-Variable |
Exclui uma variável e seu valor. |
Set-Variable |
Altera o valor de uma variável. |
Veja também
about_Automatic_Variables
about_Environment_Variables