about_Path_Syntax

Korte beschrijving

Hierin worden de volledige en relatieve padnaamindelingen in PowerShell beschreven.

Lange beschrijving

Alle items in een gegevensarchief die toegankelijk zijn via een PowerShell-provider, kunnen uniek worden geïdentificeerd door hun padnamen. Een padnaam is een combinatie van de itemnaam, de container en subcontainers waarin het item zich bevindt en het PowerShell-station waarmee de containers worden geopend.

In PowerShell worden padnamen onderverdeeld in een van twee typen: volledig gekwalificeerde en relatieve. Een volledig gekwalificeerde padnaam bestaat uit alle elementen waaruit een pad bestaat. De volgende syntaxis toont de elementen in een volledig gekwalificeerde padnaam:

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

De <tijdelijke aanduiding van de provider> verwijst naar de PowerShell-provider waarmee u toegang hebt tot het gegevensarchief. Met de provider bestandssysteem hebt u bijvoorbeeld toegang tot de bestanden en mappen op uw computer. Dit element van de syntaxis is optioneel en is nooit nodig omdat de stationsnamen uniek zijn voor alle providers.

De <tijdelijke aanduiding voor het station> verwijst naar het PowerShell-station dat wordt ondersteund door een bepaalde PowerShell-provider. In het geval van de Bestandssysteemprovider worden de PowerShell-stations toegewezen aan de Windows-stations die op uw systeem zijn geconfigureerd. Als uw systeem bijvoorbeeld een A:-station en een C:-station bevat, maakt de Provider bestandssysteem dezelfde stations in PowerShell.

Nadat u het station hebt opgegeven, moet u containers en subcontainers opgeven die het item bevatten. De containers moeten worden opgegeven in de hiërarchische volgorde waarin ze bestaan in het gegevensarchief. Met andere woorden, u moet beginnen met de bovenliggende container, vervolgens de onderliggende container in die bovenliggende container, enzovoort. Bovendien moet elke container worden voorafgegaan door een backslash. (Houd er rekening mee dat u met PowerShell slashes kunt gebruiken voor compatibiliteit met andere PowerShells.)

Nadat de container en subcontainers zijn opgegeven, moet u de itemnaam opgeven, voorafgegaan door een backslash. De volledig gekwalificeerde padnaam voor het Shell.dll-bestand in de map C:\Windows\System32 is bijvoorbeeld als volgt:

C:\Windows\System32\Shell.dll

In dit geval is het station waarmee de containers worden geopend de C: station, de container op het hoogste niveau is Windows, de subcontainer is System32 (zich in de Windows-container) en het item is Shell.dll.

In sommige situaties hoeft u geen volledig gekwalificeerde padnaam op te geven en kunt u in plaats daarvan een relatieve padnaam gebruiken. Een relatieve padnaam is gebaseerd op de huidige werklocatie. Met PowerShell kunt u een item identificeren op basis van de locatie ten opzichte van de huidige werklocatie. U kunt relatieve padnamen opgeven met speciale tekens. In de volgende tabel worden deze tekens beschreven en worden voorbeelden gegeven van relatieve padnamen en volledig gekwalificeerde padnamen. De voorbeelden in de tabel zijn gebaseerd op de huidige werkmap die wordt ingesteld op C:\Windows.

Symbool Description Relatief pad Volledig pad
. Huidige locatie .\System c:\Windows\System
.. Bovenliggende van huidige locatie .. \Program Files c:\Program Files
\ Hoofdmap van huidige station \Program Files c:\Program Files
location
[geen] Geen speciale tekens Systeem c:\Windows\System

Wanneer u een padnaam in een opdracht gebruikt, voert u die naam op dezelfde manier in, ongeacht of u een volledig gekwalificeerde padnaam of een relatieve naam gebruikt. Stel dat uw huidige werkmap C:\Windows is. Met de volgende Get-ChildItem opdracht worden alle items in de map C:\Techdocs opgehaald:

Get-ChildItem \techdocs

De backslash geeft aan dat de hoofdmap van het station van de huidige werklocatie moet worden gebruikt. Omdat de werkmap C:\Windows is, is de hoofdmap van het station het station C: station. Omdat de techdocs-map zich buiten de hoofdmap bevindt, moet u alleen de backslash opgeven.

U kunt dezelfde resultaten bereiken met behulp van de volgende opdracht:

Get-ChildItem c:\techdocs

Ongeacht of u een volledig gekwalificeerde padnaam of een relatieve padnaam gebruikt, is een padnaam niet alleen belangrijk omdat een item wordt gevonden, maar ook omdat het item uniek wordt geïdentificeerd, zelfs als dat item dezelfde naam heeft als een ander item in een andere container.

Stel dat u twee bestanden hebt met de naam Results.txt. Het eerste bestand bevindt zich in een map met de naam C:\Techdocs\Jan en het tweede bestand bevindt zich in een map met de naam C:\Techdocs\Feb. Met de padnaam voor het eerste bestand (C:\Techdocs\Jan\Results.txt) en de padnaam voor het tweede bestand (C:\Techdocs\Feb\Results.txt) kunt u duidelijk onderscheid maken tussen de twee bestanden.

Zie ook