Crea o modifica un alias (nome alternativo) di un cmdlet o di un altro elemento di comando nella sessione corrente di Windows PowerShell.

Sintassi

Set-Alias [-Name] <string> [-Value] <string> [-Description <string>] [-Force] [-Option {<None> | <ReadOnly> | <Constant> | <Private> | <AllScope>}] [-PassThru] [-Scope <string>] [-Confirm] [-WhatIf] [<CommonParameters>]

Descrizione

Il cmdlet Set-Alias consente di creare o modificare un alias, ovvero un nome alternativo, per un cmdlet o un elemento di comando, ad esempio una funzione, uno script, un file o un altro file eseguibile. È inoltre possibile utilizzare Set-Alias per riassegnare un alias corrente a un nuovo comando oppure modificare una qualsiasi delle proprietà di un alias, ad esempio la descrizione. A meno che l'alias non venga aggiunto al profilo di Windows PowerShell, le modifiche apportate a un alias andranno perse quando si esce dalla sessione o si chiude Windows PowerShell.

Parametri

-Description <string>

Specifica una descrizione dell'alias. È possibile digitare qualsiasi stringa. Se la descrizione include spazi, racchiuderla tra virgolette.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Force

Consente al cmdlet di impostare un alias di sola lettura. Utilizzare il parametro Option per creare un alias di sola lettura. Il parametro Force non può impostare un alias costante.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Name <string>

Specifica il nuovo alias. In un alias è possibile utilizzare qualsiasi carattere alfanumerico, tuttavia il primo carattere non può essere un numero.

Obbligatorio?

true

Posizione?

1

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-Option <ScopedItemOptions>

Imposta il valore della proprietà Options dell'alias.

I valori validi sono:

-- None: non imposta alcuna opzione. (valore predefinito)

-- ReadOnly: non è possibile modificare le proprietà dell'alias, a meno che non si utilizzi il parametro Force. È possibile utilizzare Remove-Item per eliminare l'alias.

-- Constant: non è possibile eliminare l'alias o modificarne le proprietà. Il valore Constant è disponibile solo quando si crea un alias. Non è possibile modificare in Constant l'opzione di un alias esistente.

-- Private: l'alias è disponibile solo nell'ambito specificato dal parametro Scope ed è invisibile in tutti gli altri ambiti.

-- AllScope: l'alias viene copiato in qualsiasi nuovo ambito creato.

Per visualizzare la proprietà Options degli alias, digitare "Get-Alias | Format-Table -property Name, Definition, Options -autosize".

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-PassThru

Restituisce un oggetto che rappresenta l'alias. Per impostazione predefinita, il cmdlet non genera alcun output.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Scope <string>

Specifica l'ambito in cui l'alias è considerato valido. I valori validi sono "Global", "Local", "Script" oppure un numero relativo all'ambito corrente, ovvero da 0 al numero di ambiti, dove 0 corrisponde all'ambito corrente e 1 al relativo padre. Il valore predefinito è "Local". Per ulteriori informazioni, vedere about_Scopes.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Value <string>

Specifica il nome dell'elemento del cmdlet o del comando che viene convertito in forma di alias.

Obbligatorio?

true

Posizione?

2

Valore predefinito

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-Confirm

Chiede una conferma prima di eseguire il comando.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-WhatIf

Descrive ciò che accadrebbe se si eseguisse il comando senza eseguirlo realmente.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Nessuno

Non è possibile reindirizzare l'input a questo cmdlet.

Output

Nessuno o System.Management.Automation.AliasInfo

Quando si utilizza il parametro PassThru, Set-Alias genera un oggetto System.Management.Automation.AliasInfo che rappresenta l'alias. Negli altri casi, il cmdlet non genera alcun output.

Note

Un alias è un nome alternativo di un cmdlet o un elemento di comando. Per eseguire il cmdlet, è possibile utilizzare il relativo nome completo o qualsiasi alias valido. Per ulteriori informazioni, vedere about_Aliases.

Per creare un nuovo alias, utilizzare Set-Alias o New-Alias. Per eliminare un alias, utilizzare Remove-Item.

A un cmdlet possono essere associati più alias, tuttavia un alias può essere associato a un solo cmdlet alla volta. Se si utilizza set-alias per associare l'alias a un cmdlet diverso, l'alias non sarà più associato al cmdlet originale.

È possibile creare un alias per un cmdlet, ma non per un comando con parametri e valori. È ad esempio possibile creare un alias per Set-Location, ma non per "Set-Location C:\Windows\System32". Per creare un alias per il comando, creare una funzione che includa il comando, quindi creare un alias per la funzione.

Per salvare gli alias di una sessione e utilizzarli in una sessione diversa, aggiungere il comando set-alias al profilo di Windows PowerShell. Per impostazione predefinita, i profili non esistono. Per creare un profilo nel percorso archiviato nella variabile $profile, digitare "New-Item -type file -force $profile". Per vedere il valore della variabile $profile, digitare $profile.

È inoltre possibile salvare gli alias utilizzando Export-Alias per copiare gli alias della sessione in un file, quindi utilizzare Import-Alias per aggiungerli all'elenco degli alias di una nuova sessione.

È inoltre possibile fare riferimento a Set-Alias tramite il relativo alias predefinito "sal". Per ulteriori informazioni, vedere about_Aliases.

Esempio 1

C:\PS>set-alias -name list -value get-childitem

Descrizione
-----------
Con questo comando viene creato l'alias "list" per il cmdlet Get-ChildItem. Dopo aver creato l'alias, sarà possibile utilizzare "list" anziché "Get-ChildItem" sulla riga di comando e negli script.






Esempio 2

C:\PS>set-alias list get-location

Descrizione
-----------
Con questo comando l'alias "list" verrà associato al cmdlet Get-Location. Se "list" è l'alias di un altro cmdlet, l'associazione verrà modificata in modo che sia l'alias solo di Get-Location.

In questo comando verrà utilizzato lo stesso formato del comando illustrato nell'esempio precedente, tuttavia verranno omessi i nomi dei parametri facoltativi -Name e -Value. Quando si omettono i nomi dei parametri, i valori di tali parametri devono essere riportati nel comando nell'ordine specificato di seguito. In questo caso, il valore di -Name ("list") deve essere il primo parametro, mentre il valore di -Value ("get-location") il secondo parametro.






Esempio 3

C:\PS>set-alias scrub remove-item -option readonly -passthru | format-list

Descrizione
-----------
Con questo comando l'alias "scrub" verrà associato al cmdlet Remove-Item. Verrà utilizzata l'opzione "ReadOnly" per impedire che l'alias venga eliminato o assegnato a un altro cmdlet.

Il parametro PassThru indicherà a Windows PowerShell di passare al cmdlet Format-List attraverso la pipeline un oggetto che rappresenta il nuovo alias. Se il parametro PassThru venisse omesso, il cmdlet non restituirebbe alcun output da visualizzare in un elenco o in altro modo.






Esempio 4

C:\PS>Set-Alias np c:\windows\notepad.exe

Descrizione
-----------
Tramite questo comando l'alias "np" verrà associato al file eseguibile di Blocco note. Dopo il completamento del comando, per aprire Blocco note dalla riga di comando di Windows PowerShell sarà sufficiente digitare "np".

In questo esempio verrà dimostrato che è possibile creare alias per file eseguibili ed elementi diversi dai cmdlet.

Per rendere il comando più generico, è possibile utilizzare la variabile di ambiente "Windir" (${env:windir}) per rappresentare la directory C\Windows. La versione generica del comando è "set-alias np ${env:windir}\notepad.exe".






Esempio 5

C:\PS>function CD32 {set-location c:\windows\system32}

C:\PS>set-alias go cd32

Descrizione
-----------
Tramite questi comandi verrà illustrato come assegnare un alias a un comando con parametri o persino a una pipeline composta da molti comandi.

È possibile creare un alias per un cmdlet, ma non per un comando costituito da un cmdlet e dai relativi parametri. Se tuttavia si inserisce il comando in una funzione o in uno script, sarà possibile creare un nome di funzione o script utile e quindi uno o più alias per tale funzione o script.

In questo esempio l'utente desidera creare un alias per il comando "set-location c:\windows\system32", in cui "set-location" è un cmdlet e "C:\Windows\System32" è il valore del parametro Path. 

A tale scopo, con il primo comando viene creata una funzione denominata "CD32" che include il comando Set-Location.

Tramite il secondo comando viene creato l'alias "go" per la funzione CD32. Quindi, per eseguire il comando Set-Location, l'utente potrà digitare "CD32" o "go".






Vedere anche




Argomenti della Guida