Dela via


Aliasprovider

Providernamn

Alias

Enheter

Alias:

Funktioner

ShouldProcess

Kort beskrivning

Ger åtkomst till PowerShell-alias och de värden som de representerar.

Detaljerad beskrivning

Med PowerShell Alias-providern kan du hämta, lägga till, ändra, rensa och ta bort alias i PowerShell.

Ett alias är ett alternativt namn för en cmdlet, funktion, körbar fil, inklusive skript. PowerShell innehåller en uppsättning inbyggda alias. Du kan lägga till egna alias i den aktuella sessionen och till din PowerShell-profil.

Aliasenheten är ett platt namnområde som endast innehåller aliasobjekten. Aliasen har inga underordnade objekt.

Aliasprovidern stöder följande cmdletar, som beskrivs i den här artikeln.

PowerShell innehåller en uppsättning cmdletar som är utformade för att visa och ändra alias. När du använder Alias-cmdletar behöver du inte ange Alias: enheten i namnet. Den här artikeln beskriver inte hur du arbetar med Alias-cmdletar.

Typer som exponeras av den här providern

Varje alias är en instans av klassen System.Management.Automation.AliasInfo .

Aliasprovidern exponerar sitt datalager på Alias: enheten. Om du vill arbeta med alias kan du ändra din plats till Alias: enheten med hjälp av följande kommando:

Set-Location Alias:

Om du vill återgå till en filsystemenhet skriver du namnet på enheten. Skriv till exempel:

Set-Location C:

Du kan också arbeta med aliasprovidern från andra PowerShell-enheter. Om du vill referera till ett alias från en annan plats använder du Alias: enhetsnamnet i sökvägen.

Anteckning

PowerShell använder alias för att ge dig ett välbekant sätt att arbeta med providersökvägar. Kommandon som dir och ls är nu alias för Get-ChildItem, cd är ett alias för Set-Location. och pwd är ett alias för Get-Location.

Visa innehållet på enheten Alias:

Det här kommandot hämtar listan över alla alias när den aktuella platsen är Alias: enheten. Det använder ett jokertecken * för att ange allt innehåll på den aktuella platsen.

PS Alias:\> Get-Item -Path *

I enheten Alias: har en punkt ., som representerar den aktuella platsen och jokertecknet *, som representerar alla objekt på den aktuella platsen, samma effekt. Till exempel, Get-Item -Path . eller Get-Item \* generera samma resultat.

Aliasprovidern har inga containrar, så kommandot ovan har samma effekt när det används med Get-ChildItem.

Get-ChildItem -Path Alias:

Hämta ett valt alias

Det här kommandot hämtar aliaset ls . Eftersom den innehåller sökvägen kan du använda den på valfri PowerShell-enhet.

Get-Item -Path Alias:ls

Om du befinner dig på Alias: enheten kan du utelämna enhetsnamnet från sökvägen.

Du kan också hämta definitionen för ett alias genom att prefixera providersökvägen med dollartecknet ($).

$Alias:ls

Hämta alla alias för en specifik cmdlet

Det här kommandot hämtar en lista över de alias som är associerade med cmdleten Get-ChildItem . Den använder egenskapen Definition , som lagrar cmdlet-namnet.

Get-Item -Path Alias:* | Where-Object {$_.Definition -eq "Get-ChildItem"}

Skapa alias

Skapa ett alias från enheten Alias:

Det här kommandot skapar aliaset serv för cmdleten Get-Service . Eftersom den aktuella platsen finns i Alias: enheten behövs inte parametern -Path .

Det här kommandot använder också den -Options dynamiska parametern för att ange alternativet AllScope för aliaset. Parametern -Options är endast tillgänglig i cmdleten New-Item när du är på Alias: enheten. Punkten (.) anger den aktuella katalogen, som är aliasenheten.

PS Alias:\> New-Item -Path . -Name serv -Value Get-Service -Options "AllScope"

Skapa ett alias med en absolut sökväg

Du kan skapa ett alias för alla objekt som anropar ett kommando. Det här kommandot skapar aliaset np för Notepad.exe.

New-Item -Path Alias:np -Value c:\windows\notepad.exe

Skapa ett alias till en ny funktion

Du kan skapa ett alias för valfri funktion. Du kan använda den här funktionen för att skapa ett alias som innehåller både en cmdlet och dess parametrar.

Det första kommandot skapar CD32 funktionen som ändrar den aktuella katalogen till System32 katalogen. Det andra kommandot skapar aliaset goCD32 för funktionen.

När kommandot är klart kan du använda antingen CD32 eller go för att anropa funktionen.

function CD32 {Set-Location -Path c:\windows\system32}
Set-Item -Path Alias:go -Value CD32

Ändra alias

Ändra alternativen för ett alias

Du kan använda cmdleten Set-Item med den -Options dynamiska parametern för att ändra värdet för egenskapen för -Options ett alias.

Det här kommandot anger alternativen AllScope och ReadOnly för aliaset dir . Kommandot använder den -Options dynamiska parametern för cmdleten Set-Item . Parametern -Options är tillgänglig i Set-Item när du använder den med alias - eller funktionsprovidern .

Set-Item -Path Alias:dir -Options "AllScope,ReadOnly"

Ändra ett alias som refereras till kommandot

Det här kommandot använder cmdleten Set-Item för att ändra aliaset gp så att det representerar cmdleten Get-Process i stället för cmdleten Get-ItemProperty . Parametern -Force krävs eftersom värdet för egenskapen Options för aliaset gp är inställt på ReadOnly. Eftersom kommandot skickas inifrån Alias: enheten anges inte enheten i sökvägen.

Set-Item -Path gp -Value Get-Process -Force

Ändringen påverkar de fyra egenskaper som definierar associationen mellan aliaset och kommandot . Om du vill visa effekten av ändringen skriver du följande kommando:

Get-Item -Path gp | Format-List -Property *

Byta namn på ett alias

Det här kommandot använder cmdleten Rename-Item för att ändra aliaset popd till pop.

Rename-Item -Path Alias:popd -NewName pop

Kopiera ett alias

Det här kommandot kopierar aliaset pushd så att ett nytt push alias skapas för cmdleten Push-Location .

När det nya aliaset skapas har dess description-egenskap ett null-värde. Och dess egenskap Option har värdet None. Om kommandot utfärdas inifrån Alias: enheten kan du utelämna enhetsnamnet från värdet för parametern -Path .

Copy-Item -Path Alias:pushd -Destination Alias:push

Ta bort ett alias

Det här kommandot tar bort aliaset serv från den aktuella sessionen. Du kan använda det här kommandot på valfri PowerShell-enhet.

Remove-Item -Path Alias:serv

Det här kommandot tar bort alias som börjar med "s". Det tar inte bort skrivskyddade alias.

Clear-Item -Path Alias:s*

Ta bort skrivskyddade alias

Det här kommandot tar bort alla alias från den aktuella sessionen, förutom de som har värdet Constant för egenskapen Alternativ . Med -Force parametern kan kommandot ta bort alias vars egenskap Alternativ har värdet ReadOnly.

Remove-Item Alias:* -Force

Dynamiska parametrar

Dynamiska parametrar är cmdlet-parametrar som läggs till av en PowerShell-provider och är endast tillgängliga när cmdleten används på den provideraktiverade enheten.

Alternativ [System.Management.Automation.ScopedItemOptions]

Avgör värdet för egenskapen Alternativ för ett alias.

  • Ingen: Inga alternativ. Detta värde är standard.
  • Konstant:Aliaset kan inte tas bort och dess egenskaper kan inte ändras. Konstant är endast tillgängligt när du skapar ett alias. Du kan inte ändra alternativet för ett befintligt alias till Konstant.
  • Privat:Aliaset visas endast i det aktuella omfånget, inte i de underordnade omfången.
  • ReadOnly:Aliasets egenskaper kan inte ändras förutom med hjälp av parametern -Force . Du kan använda Remove-Item för att ta bort aliaset.
  • AllScope:Aliaset kopieras till alla nya omfång som skapas.

Cmdletar stöds

Använda pipelinen

Provider-cmdletar accepterar pipelineindata. Du kan använda pipelinen för att förenkla uppgiften genom att skicka providerdata från en cmdlet till en annan provider-cmdlet. Mer information om hur du använder pipelinen med provider-cmdletar finns i cmdlet-referenserna i den här artikeln.

Få hjälp

Från och med Windows PowerShell 3.0 kan du få anpassade hjälpavsnitt för provider-cmdletar som förklarar hur dessa cmdletar beter sig på en filsystemenhet.

Om du vill få hjälpavsnitt som är anpassade för filsystemenheten kör du kommandot Get-Help på en filsystemenhet eller använder parametern -PathGet-Help för att ange en filsystemenhet.

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path alias:

Se även

about_Aliases

about_Providers