Share via


Om sökvägssyntax

KORT BESKRIVNING

Beskriver de fullständiga och relativa sökvägsnamnformaten i PowerShell.

LÅNG BESKRIVNING

Alla objekt i ett datalager som är tillgängliga via en PowerShell-provider kan identifieras unikt med deras sökvägsnamn. Ett sökvägsnamn är en kombination av objektnamnet, containern och undercontainrarna där objektet finns och Den PowerShell-enhet som containrarna nås via.

I PowerShell är sökvägsnamnen indelade i en av två typer: fullständigt kvalificerade och relativa. Ett fullständigt kvalificerat sökvägsnamn består av alla element som utgör en sökväg. Följande syntax visar elementen i ett fullständigt kvalificerat sökvägsnamn:

[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>

Providerplatshållaren <> refererar till PowerShell-providern som du kommer åt datalagret genom. Med FileSystem-providern kan du till exempel komma åt filer och kataloger på datorn. Det här elementet i syntaxen är valfritt och behövs aldrig eftersom enhetsnamnen är unika för alla providrar.

Platshållaren <för enheten> refererar till Den PowerShell-enhet som stöds av en viss PowerShell-provider. När det gäller FileSystem-providern mappar PowerShell-enheterna till de Windows-enheter som är konfigurerade i systemet. Om ditt system till exempel innehåller en A:-enhet och en C:-enhet skapar FileSystem-providern samma enheter i PowerShell.

När du har angett enheten måste du ange alla containrar och undercontainrar som innehåller objektet. Containrarna måste anges i den hierarkiska ordning som de finns i datalagret. Med andra ord måste du börja med den överordnade containern, sedan den underordnade containern i den överordnade containern och så vidare. Dessutom måste varje container föregås av ett omvänt snedstreck. (Observera att PowerShell gör att du kan använda snedstreck för kompatibilitet med andra PowerShell.)

När containern och undercontainrar har angetts måste du ange objektnamnet, föregås av ett omvänt snedstreck. Till exempel är det fullständigt kvalificerade sökvägsnamnet för Shell.dll-filen i katalogen C:\Windows\System32 följande:

C:\Windows\System32\Shell.dll

I det här fallet är enheten som containrarna nås via C:-enheten, containern på den översta nivån Windows, undercontainern System32 (finns i Windows-containern) och objektet är Shell.dll.

I vissa situationer behöver du inte ange ett fullständigt kvalificerat sökvägsnamn och kan i stället använda ett relativt sökvägsnamn. Ett relativt sökvägsnamn baseras på den aktuella arbetsplatsen. Med PowerShell kan du identifiera ett objekt baserat på dess plats i förhållande till den aktuella arbetsplatsen. Du kan ange relativa sökvägsnamn med hjälp av specialtecken. Följande tabell beskriver vart och ett av dessa tecken och innehåller exempel på relativa sökvägsnamn och fullständigt kvalificerade sökvägsnamn. Exemplen i tabellen baseras på den aktuella arbetskatalogen som anges till C:\Windows.

Symbol Description Relativ sökväg Fullständig sökväg
. Aktuell plats .\System C:\windows\system
.. Överordnad för aktuell plats .. \Programfiler c:\Program-filer
\ Enhetens rot för aktuell \Programfiler c:\Program-filer
location
[ingen] Inga specialtecken System C:\windows\system

När du använder ett sökvägsnamn i ett kommando anger du det namnet på samma sätt oavsett om du använder ett fullständigt kvalificerat sökvägsnamn eller ett relativt namn. Anta till exempel att din aktuella arbetskatalog är C:\Windows. Följande Get-ChildItem kommando hämtar alla objekt i katalogen C:\Techdocs:

Get-ChildItem \techdocs

Omvänt snedstreck anger att enhetsroten för den aktuella arbetsplatsen ska användas. Eftersom arbetskatalogen är C:\Windows är enhetsroten C:-enheten. Eftersom katalogen techdocs finns utanför roten behöver du bara ange det omvända snedstrecket.

Du kan uppnå samma resultat med hjälp av följande kommando:

Get-ChildItem c:\techdocs

Oavsett om du använder ett fullständigt kvalificerat sökvägsnamn eller ett relativt sökvägsnamn är ett sökvägsnamn viktigt, inte bara för att det hittar ett objekt utan även för att det unikt identifierar objektet även om objektet delar samma namn som ett annat objekt i en annan container.

Anta till exempel att du har två filer som vart och ett heter Results.txt. Den första filen finns i en katalog med namnet C:\Techdocs\Jan, och den andra filen finns i en katalog med namnet C:\Techdocs\Feb. Med sökvägen till den första filen (C:\Techdocs\Jan\Results.txt) och sökvägen till den andra filen (C:\Techdocs\Feb\Results.txt) kan du tydligt skilja mellan de två filerna.

SE ÄVEN

about_Locations