Você está na página 1de 6

TPICO

about_Automatic_Variables
DESCRIO RESUMIDA
Descreve variveis que armazenam informaes do estado para o Windows
PowerShell.
Essas variveis so criadas e mantidas pelo Windows PowerShell.
DESCRIO LONGA
A seguir, apresentada uma lista das variveis automticas no Windows
PowerShell:
$$
Contm o ltimo token da ltima linha recebida pela sesso.
$?
Contm o status de execuo da ltima operao. Contm TRUE se
a ltima operao tiver sido bem-sucedida e FALSE, caso tenha
falhado.
$^
Contm o primeiro token da ltima linha recebida pela sesso.
$_
Contm o objeto atual no objeto de pipeline. Voc pode usar
essa varivel em comandos que executam uma ao em todos os
objetos ou em objetos selecionados em um pipeline.
$Args
Contm uma matriz dos parmetros no declarados e/ou valores de
parmetros que so passados para uma funo, um script ou um bloco de
scripts.
Ao criar uma funo, voc pode declarar os parmetros usando a
palavra-chave param ou adicionando uma lista separada por
vrgulas de parmetros entre parnteses depois do nome da funo.
$ConsoleFileName
Contm o caminho do arquivo de console (.psc1) que foi usado mais
recentemente na sesso. Essa varivel populada quando voc inicia o
Windows PowerShell com o parmetro PSConsoleFile ou quando voc usa o
cmdlet Export-Console para exportar nomes de snap-in para um arquivo
de console.
Quando voc usa o cmdlet Export-Console sem parmetros, ele
atualiza automaticamente o arquivo de console usado mais
recentemente na sesso. Voc pode usar essa varivel
automtica para determinar qual arquivo ser atualizado.
$Error
Contm uma matriz de objetos de erro que representam os erros mais
recentes. O erro mais recente o primeiro objeto de erro na matriz
($Error[0]).
$$Event
Contm um objeto PSEventArgs que representa o evento que est sendo processad
o.
Essa varivel preenchida apenas no bloco Action de um comando de registro

de eventos, como Register-ObjectEvent. O valor dessa varivel o mesmo objet


o
que o cmdlet Get-Event retorna. Portanto, voc pode usar as propriedades da
varivel $Event, como $Event.TimeGenerated, em um bloco de script Action.
$EventSubscriber
Contm um objeto PSEventSubscriber que representa o assinante do evento que
est sendo processado. Essa varivel preenchida apenas no bloco Action de
um comando de registro de eventos. O valor dessa varivel o mesmo objeto
que o cmdlet Get-EventSubscriber retorna.
$ExecutionContext
Contm um objeto EngineIntrinsics que representa o contexto de
execuo do host do Windows PowerShell. Voc pode usar essa
varivel para localizar os objetos de execuo disponveis
para cmdlets.
$False
Contm FALSE. Voc pode usar essa varivel para representar
FALSE em comandos e scripts, em vez de usar a cadeia de caracteres
"false". A cadeia de caracteres pode ser interpretada como TRUE se for
convertida em uma cadeia de caracteres no vazia ou em um inteiro
diferente de zero.
$ForEach
Contm o enumerador de um loop ForEach-Object. Voc pode usar as
propriedades e os mtodos de enumeradores no valor de cada varivel
$ForEach. Essa varivel s existe enquanto o loop For est em
execuo. Ele excludo quando o loop concludo.
$Home
Contm o caminho completo do diretrio base do usurio. Essa
varivel o equivalente das variveis de ambiente
%homedrive%%homepath%, geralmente C:\Documents and
Settings\<usurio>
$Host
Contm um objeto que representa o aplicativo host atual do Windows
PowerShell. Voc pode usar essa varivel para representar o host atual em
comandos ou exibir ou alterar as propriedades do host, como $Host.version
ou $Host.CurrentCulture ou $host.ui.rawui.setbackgroundcolor("Vermelho").
$Input
Um enumerador que contm a entrada que passada a uma funo.
A varivel $Input diferencia maisculas de minsculas e est
disponvel apenas em funes e em blocos de scripts. (Blocos
de script so essencialmente funes sem nome.) No bloco
Process de uma funo, a varivel $Input contm o objeto que est
atualmente no pipeline. Quando o bloco Process concludo, o valor
de $Input NULL. Se a funo no tiver um bloco Process, o valor de
$Input estar disponvel para o bloco End e conter toda a entrada
para a funo.
$LastExitCode
Contm o cdigo de sada do ltimo programa baseado no Windows
que foi executado.
$Matches

A varivel $Matches funciona com os operadores -match e -not match.


Quando voc envia uma entrada escalar para o operador -match
ou -notmatch e um deles detecta uma correspondncia, um valor
booleano retornado e a varivel automtica $Matches populada
com uma tabela de hash de qualquer valor de cadeia de caracteres
que encontrou uma correspondncia. Para obter mais informaes
sobre o operador -match, consulte about_comparison_operators.
$MyInvocation
Contm um objeto com informaes sobre o comando atual, como
script, funo ou bloco de scripts. Voc pode usar as informaes
no objeto, como o caminho e o nome de arquivo do script
($myinvocation.mycommand.path) ou o nome de uma funo
($myinvocation.mycommand.name) para identificar o comando atual. Isso
particularmente til para localizar o nome do script que est em execuo.
$NestedPromptLevel
Contm o nvel de prompt atual. Um valor igual a 0 indica o
nvel de prompt original. O valor incrementado quando voc
entra em um nvel aninhado e decrementado quando voc sai dele.
Por exemplo, o Windows PowerShell apresenta um prompt de comando
aninhado quando voc usa o mtodo $Host.EnterNestedProm pt.
O Windows PowerShell tambm apresenta um prompt de comando
aninhado quando voc alcana um ponto de interrupo no
depurador do Windows PowerShell.
Quando voc entra em um aviso aninhado, o Windows PowerShell
pausa o comando atual, salva o contexto de execuo e
incrementa o valor da varivel $NestedPromptLevel. Para criar
prompts de comando aninhados adicionais (at 128 nveis) ou
voltar ao prompt de comando original, conclua o comando ou
digite "exit".
A varivel $NestedPromptLevel ajuda a acompanhar o nvel de prompt.
Voc pode criar um prompt de comando alternativo do Windows
PowerShell que inclua esse valor, para que ele esteja sempre visvel.
$NULL
Contm um valor NULO ou vazio. Voc pode usar essa varivel para
representar NULO em comandos e scripts, em vez de usar a cadeia de
caracteres "NULL". A cadeia de caracteres pode ser interpretada como
TRUE se for convertida em uma cadeia de caracteres no vazia ou em um
inteiro diferente de zero.
$PID
Contm o PID (identificador do processo) do processo que est
hospedando a sesso atual do Windows PowerShell.
$Profile
Contm o caminho completo do perfil do Windows PowerShell para
o usurio atual e o aplicativo host atual. Voc pode usar essa
varivel para representar o perfil em comandos. Por exemplo,
voc pode us-la em um comando para saber se um perfil foi criado:
test-path $profile
Ou pode us-la em um comando para criar um perfil:
new-item -type file -path $pshome -force

Voc tambm pode us-la em um comando para abrir o perfil no


Bloco de Notas:
notepad $profile
$PSBoundParameters
Contm um dicionrio dos parmetros ativos e de seus valores
atuais. Essa varivel contm um valor somente em um escopo no
qual os parmetros sejam declarados, como um script ou uma
funo. Voc pode us-la para exibir ou alterar os valores
atuais de parmetros ou para passar valores de parmetros a
outro script ou outra funo.
Por exemplo:
function test {
param($a, $b)
# Exibe os parmetros em formato de dicionrio.
$psboundparameters
# Chamar a funo Test1 com $a e $b.
test1 @psboundparameters
}
$PsCmdlet
Contm um objeto que representa o cmdlet ou a funo avanada
que est sendo executada.
Voc pode usar as propriedades e os mtodos do objeto em seu
cmdlet ou cdigo de funo para responder s condies de uso. Por
exemplo, a propriedade ParameterSetName contm o nome do conjunto de
parmetros que est sendo usado, e o mtodo ShouldProcess adiciona os
parmetros WhatIf e Confirm dinamicamente ao cmdlet.
Para obter mais informaes sobre a varivel automtica $PSCmdlet,
consulte about_Functions_Advanced.
$PsCulture
Contm o nome da cultura atualmente em uso no sistema
operacional. A cultura determina o formato de exibio de
itens como nmeros, moeda e datas. Esse o valor da propriedade
System.Globalization.CultureInfo.CurrentCulture.Name no sistema. Para
obter o objeto System.Globalization.CultureInfo para o sistema, use o
cmdlet Get-Culture.
$PSDebugContext
Durante a depurao, essa varivel contm informaes sobre o
ambiente de depurao. Caso contrrio, ela contm um valor NULO.
Consequentemente, voc pode us-la para indicar se o depurador tem
controle. Quando populado, ele contm um objeto PsDebugContext que
tem Pontos de interrupo e propriedades InvocationInfo. A propriedade
InvocationInfo tem vrias propriedades teis, inclusive a propriedade
Location. A propriedade Location indica o caminho do script que est
sendo depurado.
$PsHome
Contm o caminho completo do diretrio de instalao do Windows

PowerShell, normalmente, %windir%\System32\WindowsPowerShell\v1.0.


Voc pode usar essa varivel nos caminhos de arquivos do Windows
PowerShell. Por exemplo, o comando a seguir pesquisa os tpicos
conceituais da Ajuda para a palavra "varivel":
select-string -pattern varivel -path $pshome\*.txt
$PSScriptRoot
Contm o diretrio do qual o mdulo de script est sendo executado.
Essa varivel permite que scripts usem o caminho de mdulo
para acessar outros recursos.
$PsUICulture
Contm o nome da cultura da interface do usurio atualmente em
uso no sistema operacional. A cultura da interface do usurio
determina quais cadeias de texto so usadas para elementos da
interface do usurio, como menus e mensagens. Esse o valor da
propriedade System.Globalization.CultureInfo.CurrentUICulture.N
ame do sistema. Para obter o objeto System.Globalization.Cultur
eInfo para o sistema, use o cmdlet Get-UICulture.
$PsVersionTable
Contm uma tabela de hash somente leitura que exibe detalhes
sobre a verso do Windows PowerShell que est em execuo na
sesso atual.
A tabela inclui os seguintes itens:
CLRVersion:

A verso do CLR (common language runtime)

BuildVersion:

O nmero de compilao da verso atual

PSVersion:
PowerShell

O nmero da verso do Windows

WSManStackVersion:

o nmero da verso da pilha WS-Management

PSCompatibleVersions: verses do Windows PowerShell que so


compatveis com a verso atual
SerializationVersion

A verso do mtodo de serializao

PSRemotingProtocolVersion
A verso do protocolo de
gerenciamento remoto do Windows
PowerShell
$Pwd
Contm um objeto de caminho que representa o caminho completo do
diretrio atual.
$Sender
Contm o objeto que gerou esse evento. Essa varivel preenchida
apenas no bloco Action de um comando de registro de eventos. O valor
dessa varivel tambm pode ser encontrado na propriedade Sender do
objeto PSEventArgs (System.Management.Automation.PSEventArgs) que
Get-Event retorna.

$ShellID
Contm o identificador do shell atual.
$SourceArgs
Contm objetos que representam os argumentos para o evento que est
sendo processado. Essa varivel preenchida apenas no bloco Action
de um comando de registro de eventos. O valor dessa varivel
tambm pode ser encontrado na propriedade SourceArgs do objeto PSEventArgs
(System.Management.Automation.PSEventArgs) que Get-Event retorna.
$SourceEventArgs
Contm um objeto que representa o primeiro argumento do evento que
deriva de $SourceEventArgs do evento est sendo processado. Essa varivel
preenchida apenas no bloco Action de um comando de registro de eventos.
O valor dessa varivel tambm pode ser encontrado na propriedade
SourceArgs do objeto PSEventArgs (System.Management.Automation.PSEventAr
gs)
que Get-Event retorna.
$This
Em um bloco de scripts que define uma propriedade de script
ou um mtodo de script, a varivel $This faz referncia ao
objeto que est sendo estendido.
$True
Contm TRUE. Voc pode usar essa varivel para representar TRUE em
comandos e scripts.
CONSULTE TAMBM
about_Hash_Tables
about_Preference_Variables
about_Variables

Você também pode gostar