about_Alias_Provider
Nome do provedor
Alias
Unidades
Alias:
Funcionalidades
Processo Deve
Descrição breve
Fornece acesso aos aliases do PowerShell e aos valores que eles representam.
Descrição detalhada
O provedor do PowerShell Alias permite obter, adicionar, alterar, limpar e excluir aliases no PowerShell.
Um alias é um nome alternativo para um cmdlet, função, arquivo executável, incluindo scripts. O PowerShell inclui um conjunto de aliases internos. Você pode adicionar seus próprios aliases à sessão atual e ao seu perfil do PowerShell.
A unidade Alias é um namespace simples que contém somente os objetos de alias. Os aliases não possuem itens filho.
O Alias provedor dá suporte aos cmdlets a seguir, que são abordados neste artigo.
O PowerShell inclui um conjunto de cmdlets projetados para exibir e alterar aliases. Ao usar Alias cmdlets, você não precisa especificar a Alias:
unidade no nome. Este artigo não aborda o trabalho com Alias cmdlets.
Tipos expostos por este provedor
Cada alias é uma instância da classe System.Management.Automation.AliasInfo.
Navegando na Alias unidade
O Alias provedor expõe seu armazenamento de dados na Alias:
unidade. Para trabalhar com aliases, você pode alterar sua localização para a Alias:
unidade usando o seguinte comando:
Set-Location Alias:
Para retornar a uma unidade de sistema de arquivos, digite o nome da unidade. Por exemplo, digite:
Set-Location C:
Você também pode trabalhar com o Alias provedor de qualquer outra unidade do PowerShell. Para fazer referência a um alias de outro local, use o nome de unidade Alias:
no caminho.
Observação
O PowerShell usa aliases para permitir que você trabalhe com caminhos de provedor. Comandos como dir
e ls
agora são aliases no Windows e dir
no Linux e no macOS para Get-ChildItem, cd
é um alias para set-location e pwd
é um alias para get-location.
Exibindo o conteúdo da Aliasunidade :
Este comando obtém a lista de todos os aliases quando o local atual é a Alias:
unidade. Ele usa um caractere *
curinga para indicar todo o conteúdo do local atual.
PS Alias:\> Get-Item -Path *
Alias:
Na unidade, um ponto .
, que representa o local atual, e um caractere *
curinga , que representa todos os itens no local atual, têm o mesmo efeito. Por exemplo, Get-Item -Path .
ou Get-Item \*
produzir o mesmo resultado.
O Alias provedor não tem contêineres, portanto, o comando acima tem o mesmo efeito quando usado com Get-ChildItem
.
Get-ChildItem -Path Alias:
Obter um alias selecionado
Esse comando obtém o alias ls
.
Como ele inclui o caminho, você pode usá-lo em qualquer unidade do PowerShell.
Get-Item -Path Alias:ls
Se você estiver na Alias:
unidade, poderá omitir o nome da unidade do caminho.
Você também pode recuperar a definição de um alias prefixando o caminho do provedor com o sinal de dólar ($
).
$Alias:ls
Obter todos os aliases de um cmdlet específico
Esse comando obtém uma lista dos aliases associados ao Get-ChildItem
cmdlet. Ele usa a Definition propriedade, que armazena o nome do cmdlet.
Get-Item -Path Alias:* | Where-Object {$_.Definition -eq "Get-ChildItem"}
Criando aliases
Criar um alias da unidade Alias:
Esse comando cria o alias serv
para o cmdlet Get-Service
. Como o local atual está na Alias:
unidade, o -Path
parâmetro não é necessário.
Esse comando também usa o parâmetro dinâmico -Options
para definir a opção AllScope no alias. O -Options
parâmetro está disponível no New-Item
cmdlet somente quando você está na Alias:
unidade. O ponto (.
) indica o diretório atual, que é o "alias drive".
PS Alias:\> New-Item -Path . -Name serv -Value Get-Service -Options "AllScope"
Criar um alias com caminho absoluto
Você pode criar um alias para qualquer item que invoque um comando.
Esse comando cria o alias np
para Notepad.exe
.
New-Item -Path Alias:np -Value c:\windows\notepad.exe
Criar um alias para uma nova função
Você pode criar um alias para qualquer função. Você pode usar esse recurso para criar um alias que inclua um cmdlet e seus parâmetros.
O primeiro comando cria a CD32
função, que altera o diretório atual para o System32
diretório. O segundo comando cria o alias go
para a função CD32
.
Quando o comando for concluído, você poderá usar ou CD32
go
para invocar a função.
function CD32 {Set-Location -Path c:\windows\system32}
Set-Item -Path Alias:go -Value CD32
Alterando aliases
Alterar as opções de um alias
Você pode usar o cmdlet Set-Item
com o parâmetro dinâmico -Options
para alterar o valor da propriedade -Options
de um alias.
Este comando define as opções AllScope e ReadOnly para o alias dir
. O comando usa o -Options
parâmetro dinâmico do Set-Item
cmdlet. O -Options
parâmetro está disponível quando Set-Item
você o usa com o Alias provedor de funções ou.
Set-Item -Path Alias:dir -Options "AllScope, ReadOnly"
Alterar um comando referenciado de aliases
Esse comando usa o cmdlet Set-Item
para alterar o alias gp
para que ele represente o cmdlet Get-Process
em vez do cmdlet Get-ItemProperty
.
O parâmetro -Force
é necessário porque o valor da propriedade Options do alias gp
está definido como ReadOnly
. Como o comando é enviado de dentro da Alias:
unidade, a unidade não é especificada no caminho.
Set-Item -Path gp -Value Get-Process -Force
A alteração afeta as quatro propriedades que definem a associação entre o alias e o comando. Para exibir o efeito da alteração, digite o seguinte comando:
Get-Item -Path gp | Format-List -Property *
Renomear um apelido
Esse comando usa o cmdlet Rename-Item
para alterar o alias popd
para pop
.
Rename-Item -Path Alias:popd -NewName pop
Copiando um alias
Esse comando copia o alias pushd
para que um novo alias push
seja criado para o cmdlet Push-Location
.
Quando o novo alias é criado, sua propriedade Description tem um valor nulo.
E sua Option propriedade tem um valor de None
. Se o comando for emitido de dentro da Alias:
unidade, você poderá omitir o nome da unidade do valor do -Path
parâmetro.
Copy-Item -Path Alias:pushd -Destination Alias:push
Excluindo um alias
Esse comando exclui o alias serv
da sessão atual.
Você pode usar esse comando em qualquer unidade do PowerShell.
Remove-Item -Path Alias:serv
Esse comando exclui aliases que começam com "s". Ele não exclui aliases somente leitura.
Clear-Item -Path Alias:s*
Excluir aliases somente leitura
Esse comando exclui todos os aliases da sessão atual, exceto aqueles com um valor de Constant
para sua propriedade Options . O -Force
parâmetro permite que o comando exclua aliases cuja propriedade Options tem um valor de ReadOnly
.
Remove-Item Alias:* -Force
Parâmetros dinâmicos
Parâmetros dinâmicos são parâmetros de cmdlet adicionados por um provedor do PowerShell e estão disponíveis somente quando o cmdlet está sendo usado na unidade habilitada para provedor.
Opções [System.Management.Automation.ScopedItemOptions]
Determina o valor da propriedade Options de um alias.
- None: Sem opções. Esse valor é o padrão.
- Constant:O alias não pode ser excluído e suas propriedades não podem ser alteradas. Constant está disponível somente quando você cria um alias. Não é possível alterar a opção de um alias existente para Constant.
- PrivateO alias é visível somente no escopo atual, mas não em escopos filho.
- ReadOnly:As propriedades do alias não podem ser alteradas, exceto usando o parâmetro
-Force
. Você pode usarRemove-Item
para excluir o alias. - AllScopeO alias é copiado para quaisquer novos escopos criados.
Cmdlets com suporte
Usando o pipeline
Os cmdlets do provedor aceitam a entrada do pipeline. Você pode usar o pipeline para simplificar a tarefa enviando dados do provedor de um cmdlet para outro cmdlet do provedor. Para ler mais sobre como usar o pipeline com cmdlets de provedor, consulte as referências de cmdlet fornecidas ao longo deste artigo.
Obtendo ajuda
A partir do Windows PowerShell 3.0, você pode obter tópicos da Ajuda personalizados para cmdlets do provedor que explicam como esses cmdlets se comportam em uma unidade de sistema de arquivos.
Para obter os tópicos de ajuda personalizados para a unidade do sistema de arquivos, execute um comando Get-Help em uma unidade do sistema de arquivos ou use o -Path
parâmetro Get-Help para especificar uma unidade do sistema de arquivos.
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path alias: