- 06/05/2017
- 4 minutes to read
-
- j
- s
- m
A mapparendszerek navigálása a File Explorerben, általában van egy meghatározott munkapontunk – nevezetesen az aktuálisan megnyitott mappa. Az aktuális mappában lévő elemek könnyen manipulálhatók, ha rákattintunk. Az olyan parancssori felületek esetében, mint a Cmd.exe, ha egy adott fájllal azonos mappában tartózkodik, akkor egy viszonylag rövid név megadásával érheti el azt, ahelyett, hogy a fájl teljes elérési útvonalát meg kellene adnia. Az aktuális könyvtárat munkakönyvtárnak nevezzük.
A Windows PowerShell a Location főnevet használja a munkakönyvtárra való hivatkozásra, és egy cmdlet-családot valósít meg a hely vizsgálatára és manipulálására.
A jelenlegi hely megkeresése (Get-Location)
Az aktuális könyvtár helyének elérési útvonalának meghatározásához adja meg a Get-Location parancsot:
PS> Get-LocationPath----C:\Documents and Settings\PowerUser
Megjegyzés
A Get-Location cmdlet hasonló a BASH shell pwd parancsához. A Set-Location cmdlet a Cmd.exe program cd parancsához hasonlít.
A jelenlegi hely beállítása (Set-Location)
A Get-Location parancs a Set-Location paranccsal együtt használható. A Set-Location paranccsal megadhatja az aktuális könyvtár helyét.
Set-Location -Path C:\Windows
A parancs beírása után észreveheti, hogy nem kap közvetlen visszajelzést a parancs hatásáról. A legtöbb Windows PowerShell parancs, amely műveletet hajt végre, kevés vagy semmilyen kimenetet nem ad, mivel a kimenet nem mindig hasznos. Annak ellenőrzéséhez, hogy a Set-Location parancs megadásakor sikeres könyvtárváltás történt-e, a Set-Location parancs megadásakor adja meg a -PassThru paramétert:
PS> Set-Location -Path C:\Windows -PassThruPath----C:\WINDOWS
A -PassThru paraméter a Windows PowerShell számos Set parancsánál használható az eredményre vonatkozó információk visszaadására olyan esetekben, amikor nincs alapértelmezett kimenet.
A jelenlegi helyhez viszonyított elérési utakat ugyanúgy megadhatja, mint a legtöbb UNIX és Windows parancsoshéjban. A relatív elérési utak szabványos jelölésében a pont (.)az aktuális mappát, a dupla pont (..) pedig az aktuális hely szülő könyvtárát jelenti.
Ha például a C:\Windows mappában van, a pont (.)a C:\Windows, a dupla pont (..) pedig a C: mappát jelenti. Az aktuális helyről a C: meghajtó gyökerére a következő beírással válthat:
PS> Set-Location -Path .. -PassThruPath----C:\
Ugyanez a technika működik a Windows PowerShell olyan meghajtókon is, amelyek nem fájlrendszer-meghajtók, például a HKLM:. Beállíthatja a helyét a HKLM\Software kulcsra a rendszerleíró adatbázisban:
PS> Set-Location -Path HKLM:\SOFTWARE -PassThruPath----HKLM:\SOFTWARE
Ezután relatív elérési út használatával módosíthatja a könyvtár helyét a szülő könyvtárra, amely a Windows PowerShell HKLM: meghajtójának gyökere:
PS> Set-Location -Path .. -PassThruPath----HKLM:\
A Set-Location beírásával vagy a Set-Location beépített Windows PowerShell aliasainak bármelyikével (cd, chdir, sl). Például:
cd -Path C:\Windows
chdir -Path .. -PassThru
sl -Path HKLM:\SOFTWARE -PassThru
A legutóbbi helyek mentése és visszahívása (Push-Location és Pop-Location)
Helyszínváltáskor hasznos, ha nyomon követjük, hol jártunk, és vissza tudunk térni az előző helyre. A Windows PowerShell Push-Location cmdletje egy rendezett előzményt (“verem”) hoz létre azokról a könyvtárak elérési útvonalairól, ahol már jártunk, és a kiegészítő Pop-Location cmdlet használatával visszaléphetünk a könyvtárak elérési útvonalainak előzményei között.
A Windows PowerShell például általában a felhasználó otthoni könyvtárában indul.
PS> Get-LocationPath----C:\Documents and Settings\PowerUser
Megjegyzés
A verem szónak speciális jelentése van számos programozási beállításban, beleértve a .NET Framework-et is. Mint egy fizikai tárgyakból álló veremnél, a veremre utoljára felrakott elem az első elem, amelyet le lehet húzni a veremről. Egy elemnek a veremhez való hozzáadását a köznyelv úgy nevezi, hogy az elemet a veremre “tolja”. Egy elemet a veremről való lehúzása a köznyelvben az elemnek a veremről való “leemelésének” nevezik.
Az aktuális helyet a veremre tolni, majd a Helyi beállítások mappába lépni a:
Push-Location -Path "Local Settings"
A Helyi beállítások helyét a veremre tolni, majd a Temp mappába lépni a:
Push-Location -Path Temp
beírásával lehet ellenőrizni, hogy könyvtárat váltott-e a Get-Location parancs megadásával:
PS> Get-LocationPath----C:\Documents and Settings\PowerUser\Local Settings\Temp
Ezután a Pop-Location parancs beírásával visszaléphet a legutóbb meglátogatott könyvtárba, és a Get-Location parancs beírásával ellenőrizheti a változást:
PS> Pop-LocationPS> Get-LocationPath----C:\Documents and Settings\me\Local Settings
A Set-Location cmdlethez hasonlóan a Pop-Location cmdlet beírásakor a -PassThru paramétert is megadhatja a beírt könyvtár megjelenítéséhez:
PS> Pop-Location -PassThruPath----C:\Documents and Settings\PowerUser
A Location cmdleteket hálózati elérési utakkal is használhatja. Ha van egy FS01 nevű kiszolgálója egy Public nevű megosztással, akkor a
Set-Location \FS01\Public
vagy
Push-Location \FS01\Public
beírásával módosíthatja a helyet, és a Push-Location és a Set-Location parancsokkal bármelyik elérhető meghajtóra módosíthatja a helyet. Ha például van egy helyi CD-ROM-meghajtó D meghajtóbetűvel, amely egy adat-CD-t tartalmaz, akkor a Set-Location D: parancs beírásával módosíthatja a helyet a CD-meghajtóra.
Ha a meghajtó üres, akkor a következő hibaüzenetet kapja:
PS> Set-Location D:Set-Location : Cannot find path 'D:\' because it does not exist.
A parancssori felület használatakor nem kényelmes a File Explorer segítségével megvizsgálni a rendelkezésre álló fizikai meghajtókat. Emellett a File Explorer nem mutatná meg a Windows PowerShell összes meghajtóját. A Windows PowerShell egy sor parancsot biztosít a Windows PowerShell meghajtók manipulálására, ezekről a következőkben lesz szó.