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 a 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: Criar 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 list alias. O list alias está associado ao Get-ChildItem cmdlet. Quando o list alias é executado, os itens no diretório atual são exibidos.

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

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

Exemplo 3: Criar 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 .

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

$Parameters = @{
    Name        =  'loc'
    Value       =  (Get-Location)
    Option      =  'ReadOnly'
    Description =  'Displays the current directory'
    Force       = $true
    PassThru    = $true
}
Set-Alias @Parameters | 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 cada propriedade seja exibida. A saída de exemplo mostra uma lista parcial dessas propriedades.

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

Exemplo 4: Criar 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 C:\Windows\notepad.exedo aplicativo. O Get-Alias cmdlet usa o parâmetro Name para mostrar que o np alias está associado ao notepad.exe.

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

Exemplo 5: Criar 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 .

Continuando do exemplo anterior, defina o alias Go como ReadOnly e Private.

Set-Alias -Name Go -Option ReadOnly, Private

O alias Go já deveria existir. Depois de executar o comando, o alias não pode ser alterado sem usar o parâmetro Force e só está 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 Constant.

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 hífens. Os 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 de 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 quaisquer novos escopos que são criados.
  • Constant - Não pode ser alterado ou excluído.
  • None - Não define opções 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 juntos 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 combina 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 em que 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
  • Private
  • Numbered scopes
  • 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

Não é possível canalizar objetos para esse cmdlet.

Saídas

None

Por padrão, esse cmdlet não retorna nenhuma saída.

AliasInfo

Quando você usa o parâmetro PassThru , esse cmdlet retorna um objeto AliasInfo que representa o alias.

Observações

O PowerShell inclui os seguintes aliases para Set-Alias:

  • Todas as plataformas:
    • sal

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.