Uso degli alias

Un alias è un nome alternativo o un nome abbreviato per un cmdlet o per un elemento di comando, ad esempio una funzione, uno script, un file o un file eseguibile. È possibile eseguire il comando usando l'alias anziché il nome eseguibile.

Gestione degli alias dei comandi

PowerShell fornisce cmdlet per la gestione degli alias dei comandi. Il comando seguente mostra i cmdlet che gestiscono gli alias.

Get-Command -Noun Alias
CommandType Name         Version Source
----------- ----         ------- ------
Cmdlet      Export-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Get-Alias    7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Import-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      New-Alias    7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Remove-Alias 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet      Set-Alias    7.0.0.0 Microsoft.PowerShell.Utility

Per altre informazioni, vedere about_Aliases.

Usare il cmdlet Get-Alias per elencare gli alias disponibili nell'ambiente. Per elencare gli alias per un singolo cmdlet, usare il parametro Definition e specificare il nome eseguibile.

Get-Alias -Definition Get-ChildItem
CommandType     Name
-----------     ----
Alias           dir -> Get-ChildItem
Alias           gci -> Get-ChildItem
Alias           ls -> Get-ChildItem

Per ottenere la definizione di un singolo alias, usare il parametro Name .

Get-Alias -Name gci
CommandType     Name
-----------     ----
Alias           gci -> Get-ChildItem

Per creare un alias, usare il Set-Alias comando . È possibile creare alias per cmdlet, funzioni, script e file eseguibili nativi.

Set-Alias -Name np -Value Notepad.exe
Set-Alias -Name cmpo  -Value Compare-Object

Alias di compatibilità in Windows

PowerShell include diversi alias che consentono a UNIX e cmd.exe agli utenti di usare comandi familiari in Windows. La tabella seguente illustra i comandi comuni, il cmdlet di PowerShell correlato e l'alias di PowerShell:

Shell dei comandi di Windows Comando UNIX Cmdlet di PowerShell Alias di PowerShell
cd, chdir cd Set-Location sl, cd, chdir
cls clear Clear-Host cls clear
copy cp Copy-Item cpi, cp, copy
del, erase, rdrmdir rm Remove-Item ri, del, erase, rd, rmrmdir
dir ls Get-ChildItem gci, dir, ls
echo echo Write-Output write echo
md mkdir New-Item ni
move mv Move-Item mi, move, mi
popd popd Pop-Location popd
pwd Get-Location gl, pwd
pushd pushd Push-Location pushd
ren mv Rename-Item rni, ren
type cat Get-Content gc, cat, type

Nota

Gli alias in questa tabella sono specifici di Windows. Alcuni alias non sono disponibili in altre piattaforme. Ciò consente al comando nativo di funzionare in una sessione di PowerShell. Ad esempio, ls non è definito come alias di PowerShell in macOS o Linux in modo che il comando nativo venga eseguito invece di Get-ChildItem.

Creazione di nomi alternativi per i comandi con parametri

È possibile assegnare un alias a un cmdlet, uno script, una funzione o un file eseguibile. A differenza di alcune shell Unix, non è possibile assegnare un alias a un comando con parametri. Ad esempio, è possibile assegnare un alias al Get-Eventlog cmdlet, ma non è possibile assegnare un alias al Get-Eventlog -LogName System comando. È necessario creare una funzione contenente il comando con parametri.

Per altre informazioni, vedere about_Aliases.

Alias dei parametri e nomi abbreviati

PowerShell offre anche modi per creare nomi abbreviati per i parametri. Gli alias dei parametri vengono definiti usando l'attributo Alias quando si dichiara il parametro . Questi non possono essere definiti usando i *-Alias cmdlet.

Per altre informazioni, vedere la documentazione sull'attributo Alias.

Oltre agli alias dei parametri, PowerShell consente di specificare il nome del parametro usando i meno caratteri necessari per identificare in modo univoco il parametro. Ad esempio, il Get-ChildItem cmdlet ha i parametri Recurse e ReadOnly . Per identificare in modo univoco il parametro Recurse è necessario specificare -recsolo . Se lo si combina con l'alias di comando, Get-ChildItem -Recurse è possibile abbreviare in dir -rec.

Non usare alias negli script

Gli alias sono una funzionalità utile da usare in modo interattivo nella shell. È consigliabile usare sempre i nomi completi dei comandi e dei parametri negli script.

  • Gli alias possono essere eliminati o ridefiniti in uno script del profilo
  • Gli alias definiti potrebbero non essere disponibili per l'utente degli script
  • Gli alias rendono il codice più difficile da leggere e gestire