Share via


Set-Alias

Cria ou altera um alias para um cmdlet ou outro comando na sessão atual do PowerShell.

Syntax

Set-Alias
   [-Name] <string>
   [-Value] <string>
   [-Description <string>]
   [-Option <ScopedItemOptions>]
   [-PassThru]
   [-Scope <string>]
   [-Force]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

O Set-Alias cmdlet cria ou altera um alias para um cmdlet ou um comando, como uma função, script, arquivo ou outro executável. Um alias é um nome alternativo que se refere a um cmdlet ou comando. Por exemplo, sal é o alias do Set-Alias cmdlet . Para obter mais informações, consulte about_Aliases.

Um cmdlet pode ter vários aliases, mas um alias só pode ser associado a um cmdlet. Você pode usar Set-Alias para reatribuir um alias existente para outro cmdlet ou alterar as propriedades de um alias, como a descrição.

Um alias criado ou alterado por Set-Alias não é permanente e só está disponível durante a sessão atual do PowerShell. Quando a sessão do PowerShell é fechada, o alias é removido.

Exemplos

Exemplo 1: Create um alias para um cmdlet

Esse comando cria um alias para um cmdlet na sessão atual do PowerShell.

PS> Set-Alias -Name list -Value Get-ChildItem

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-ChildItem

O Set-Alias cmdlet cria um alias na sessão atual do PowerShell. O parâmetro Name especifica o nome do alias, list. O parâmetro Value especifica o cmdlet que o alias executa.

Para executar o alias, digite list na linha de comando do PowerShell.

Exemplo 2: reatribuir um alias existente a um cmdlet diferente

Esse comando reatribui um alias existente para executar um cmdlet diferente.

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-ChildItem

PS> Set-Alias -Name list -Value Get-Location

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-Location

O Get-Alias cmdlet usa o parâmetro Name para exibir o alias list . O alias list está associado ao Get-ChildItem cmdlet . Quando o alias list é executado, os itens no diretório atual são exibidos.

O Set-Alias cmdlet usa o parâmetro Name para especificar o alias list . O parâmetro Value associa o alias ao Get-Location cmdlet .

O Get-Alias cmdlet usa o parâmetro Name para exibir o alias list . O alias list está associado ao Get-Location cmdlet . Quando o alias list é executado, o local do diretório atual é exibido.

Exemplo 3: Create e alterar um alias somente leitura

Esse comando cria um alias somente leitura. A opção somente leitura impede alterações não intencionais em um alias. Para alterar ou excluir um alias somente leitura, use o parâmetro Force .

PS> Set-Alias -Name loc -Value Get-Location -Option ReadOnly -PassThru | Format-List -Property *

DisplayName         : loc -> Get-Location
Definition          : Get-Location
Options             : ReadOnly
Description         :
Name                : loc
CommandType         : Alias

PS> Set-Alias -Name loc -Value Get-Location -Option ReadOnly -Description 'Displays the current directory' -Force -PassThru | Format-List -Property *

DisplayName         : loc -> Get-Location
Definition          : Get-Location
Options             : ReadOnly
Description         : Displays the current directory
Name                : loc
CommandType         : Alias

O Set-Alias cmdlet cria um alias na sessão atual do PowerShell. O parâmetro Name especifica o nome do alias, loc. O parâmetro Value especifica o Get-Location cmdlet que o alias executa. O parâmetro Option especifica o valor ReadOnly . O parâmetro PassThru representa o objeto alias e envia o objeto pelo pipeline para o Format-List cmdlet . Format-List usa o parâmetro Property com um asterisco (*) para que todas as propriedades sejam exibidas. A saída de exemplo mostra uma lista parcial dessas propriedades.

O alias loc é alterado com a adição de dois parâmetros. A descrição adiciona texto para explicar a finalidade do alias. O parâmetro Force é necessário porque o alias loc é somente leitura. Se o parâmetro Force não for usado, a alteração falhará.

Exemplo 4: Create um alias para um arquivo executável

Este exemplo cria um alias para um arquivo executável no computador local.

PS> Set-Alias -Name np -Value C:\Windows\notepad.exe

PS> Get-Alias -Name np

CommandType     Name
-----------     ----
Alias           np -> notepad.exe

O Set-Alias cmdlet cria um alias na sessão atual do PowerShell. O parâmetro Name especifica o nome do alias, np. O parâmetro Value especifica o caminho e o nome do aplicativo C:\Windows\notepad.exe. O Get-Alias cmdlet usa o parâmetro Name para mostrar que o alias np está associado a notepad.exe.

Para executar o alias, digite np na linha de comando do PowerShell para abrir notepad.exe.

Exemplo 5: Create um alias para um comando com parâmetros

Este exemplo mostra como atribuir um alias a um comando com parâmetros.

Você pode criar um alias para um cmdlet, como Set-Location. Não é possível criar um alias para um comando com parâmetros e valores, como Set-Location -Path C:\Windows\System32. Para criar um alias para um comando, crie uma função que inclua o comando e, em seguida, crie um alias para a função. Para obter mais informações, consulte about_Functions.

Function CD32 {Set-Location -Path C:\Windows\System32}

Set-Alias -Name Go -Value CD32

Uma função chamada CD32 é criada. A função usa o Set-Location cmdlet com o parâmetro Path para especificar o diretório , C:\Windows\System32.

O Set-Alias cmdlet cria um alias para a função na sessão atual do PowerShell. O parâmetro Name especifica o nome do alias, Go. O parâmetro Value especifica o nome da função, CD32.

Para executar o alias, digite Go na linha de comando do PowerShell. A CD32 função é executada e muda para o diretório C:\Windows\System32.

Exemplo 6: Opções de atualização para um alias existente

Este exemplo mostra como atribuir várias opções usando o parâmetro Option .

Usando o exemplo acima, definiremos o alias Go como ReadOnly e Private.

Set-Alias -Name Go -Option ReadOnly, Private

O alias Go já deve existir. Depois de executar o comando acima, o alias não poderá ser alterado sem usar o parâmetro Force e só estará disponível no escopo atual.

Parâmetros

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Especifica uma descrição do alias. Você pode digitar qualquer cadeia de caracteres. Se a descrição incluir espaços, coloque-a entre aspas simples.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Use o parâmetro Force para alterar ou excluir um alias que tenha o parâmetro Option definido como ReadOnly.

O parâmetro Force não pode alterar ou excluir um alias com o parâmetro Option definido como Constante.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Especifica o nome de um novo alias. Um nome de alias pode conter caracteres alfanuméricos e hifens. Nomes de alias não podem ser numéricos, como 123.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Option

Define o valor da propriedade Option do alias. Valores como ReadOnly e Constant protegem um alias contra alterações não intencionais. Para ver a propriedade Option de todos os aliases na sessão, digite Get-Alias | Format-Table -Property Name, Options -Autosize.

Os valores aceitáveis para esse parâmetro são os seguintes:

  • AllScope - O alias é copiado para todos os novos escopos criados.
  • Constant – Não é possível alterar ou excluir.
  • None – Define nenhuma opção e é o padrão.
  • Private - O alias está disponível apenas no escopo atual.
  • ReadOnly – Não pode ser alterado ou excluído, a menos que o parâmetro Force seja usado.
  • Unspecified

Esses valores são definidos como uma enumeração baseada em sinalizador. Você pode combinar vários valores para definir vários sinalizadores usando esse parâmetro. Os valores podem ser passados para o parâmetro Option como uma matriz de valores ou como uma cadeia de caracteres separada por vírgulas desses valores. O cmdlet combinará os valores usando uma operação binary-OR. Passar valores como uma matriz é a opção mais simples e também permite que você use a conclusão de tabulação nos valores.

Type:ScopedItemOptions
Accepted values:AllScope, Constant, None, Private, ReadOnly, Unspecified
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Retorna um objeto que representa o alias. Use um cmdlet de formato como Format-List para exibir o objeto . Por padrão, Set-Alias não gera nenhuma saída.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Especifica o escopo no qual esse alias é válido. O valor padrão é Local. Para obter mais informações, consulte about_Scopes.

Os valores aceitáveis são os seguintes:

  • Global
  • Local
  • Privado
  • Escopos numerados
  • Script
Type:String
Accepted values:Global, Local, Private, Numbered scopes, Script
Position:Named
Default value:Local
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Value

Especifica o nome do cmdlet ou comando que o alias executa. O parâmetro Value é a propriedade Definition do alias.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

None

Set-Alias não aceita a entrada do pipeline.

Saídas

None or System.Management.Automation.AliasInfo

Quando você usa o parâmetro PassThru , Set-Alias gera um objeto System.Management.Automation.AliasInfo que representa o alias. Caso contrário, Set-Alias não gerará nenhuma saída.

Observações

O PowerShell inclui aliases internos que estão disponíveis em cada sessão do PowerShell. O Get-Alias cmdlet exibe os aliases disponíveis em uma sessão do PowerShell.

Para criar um alias, use os cmdlets Set-Alias ou New-Alias. No PowerShell 6, para excluir um alias, use o Remove-Alias cmdlet . Remove-Item é aceito para compatibilidade com versões anteriores, como para scripts criados com versões anteriores do PowerShell. Use um comando como Remove-Item -Path Alias:aliasname.

Para criar um alias disponível em cada sessão do PowerShell, adicione-o ao seu perfil do PowerShell. Para obter mais informações, consulte about_Profiles.

Um alias pode ser salvo e reutilizado em outra sessão do PowerShell fazendo uma exportação e importação. Para salvar um alias em um arquivo, use Export-Alias. Para adicionar um alias salvo a uma nova sessão do PowerShell, use Import-Alias.