![]()
A szkriptek bármilyen fejlesztése általában hibaelhárítást igényel, amely általában a két megközelítés egyikét eredményezi. Vagy manuálisan állítsa be a változókat értékekre, és adja ki ezeket az adatokat a parancsfájl futtatásakor, vagy használja a hibakeresést a töréspontok beállításához az adatok ellenőrzéséhez a folytatás vagy a megszakítás előtt. A PowerShell ISE és a Visual Studio Code beépített része a hibakeresés végrehajtása.
Hogyan működik a PowerShell hibakeresése?
A Windows PowerShell-hez mellékelve a PowerShell ISE a PowerShell-parancsfájlok hibakeresését szolgáló hagyományos környezet. A hibakereséshez beépített menüvel és a töréspontok grafikus ábrázolásával könnyen el lehet indulni. Először minden szkriptet, amelyet hibakeresni kell, el kell menteni. Ezután meg kell adnia a töréspontokat a három módszer egyikével.
- A fókuszált vonalon használja az F9 billentyűt a töréspont beállításához.
- Kattintson a jobb gombbal egy vonal mellett, és válassza a Töréspont átkapcsolása lehetőséget a töréspont beállításához.
- Használja a
Set-PSBreakPointegy sor, változó, függvény vagy egyeztetett szöveg megadása.
Miután beállított egy töréspontot, egyszerűen elkezdheti a hibakeresést a parancsfájl futtatásával az F5, vagy a Hibakeresés → Futtatás / Folytatás paranccsal. Amint a parancsfájl eléri a megadott töréspontot, a végrehajtás szünetel, és a következő műveletek egyikét kell végrehajtania.
- Átlép – Csak az aktuális utasítást hajtsa végre, a következő utasítás előtt álljon meg. Ha az aktuális utasítás függvény vagy szkript, akkor a teljes hívást állítsa le, mielőtt leállna.
- Belép – A Step Over-hez hasonlóan csak az aktuális utasítást hajtsa végre, a következő utasítás előtt álljon meg. A teljes függvény vagy parancsfájl végrehajtása helyett, ha hívják, lépjen be a hívásba.
- Kilépni – Ha egy függvényen belül van, lépjen ki és feljebb egy szinttel, ha a funkció be van ágyazva. Ha a fő szkriptben a parancsfájl vagy a következő töréspont végéig hajtódik végre, attól függően, hogy melyik előbb. Az átugrott utasításokat végrehajtják, de nem lépik át őket.
Amikor a parancsfájl leáll egy törésponton, az egér kurzorával egy változó fölé mutathat, és megnézheti az adott változó értékeit. Ezenkívül használhatja a parancssort a változók kiadására az aktuális állapot megtekintéséhez is. Van néhány figyelmeztetés erre. $_, $Input, $MyInvocation, $PSBoundParameters, és $Args nem fog működni, mivel ezek automatikus változók, és nem tartoznak hibakeresés alá. Az értékek lekérésének egyik módja az, hogy hozzárendeli őket egy köztes változóhoz, amelyet aztán beállíthat egy töréspontra.
![]()
PowerShell-hibakeresés a Visual Studio kódban
Nagyon hasonlít a PowerShell ISE működéséhez, a Visual Studio Code számos nagyon hasznos hibakeresési lehetőséget kínál. Ezenkívül a VS Code lehetővé teszi a PowerShell 7.x egyszerű hibakeresését, miközben az ISE hagyományosan csak a Windows PowerShellre korlátozódik. A PowerShell ISE-vel megegyező kulcsparancsokkal gyorsan megkezdheti a hibakeresést. Még jobb, hogy mostantól megvan a hibakereső ablaktábla a VS Code-ben, amely összevonja a változó kimenetének nagy részét, és megkönnyíti a kód összes változóértékének pillanatképének megtekintését.
A VS-kód hibakeresése
Csakúgy, mint a PowerShell ISE, az F5 segítségével is elindíthat egy interaktív hibakeresési munkamenetet. Az ISE-vel ellentétben a VS Code sokkal jobb és hasznosabb hibakeresési élményt kínál. Nem csak a hagyományos Debug konzolt kapja meg, amelyet a [DBG] parancsot, de az összes ismert változó és azok kimenete megtalálható a bal oldali hibakeresési panelen. A hibakeresési opciók jobb navigálása érdekében a felső hibakeresési sáv nagyon megkönnyíti a belépést, a kilépést és a töréspontok átlépését. Futtatás előtt nem szükséges spórolni!
![]()
A A VS kód PowerShell kiterjesztése szükséges, hogy ez könnyen működjön.
A parancs hibakeresési parancsainak használata
Bár a szigorúan a parancssorból történő hibakeresés időnként nem a legkönnyebb művelet, ezt a beépített hibakeresési parancsok segítségével teheti meg. Van néhány beépített parancs ennek megkönnyítésére.
A sokoldalú használata Set-PSBreakPoint, gyorsan beállíthat egy töréspontot, amely a találat után belép a hibakeresés parancssorába. Ezen a ponton a szabványos billentyűkombinációk segítségével gyorsan megvizsgálhatja a változókat, és folytathatja vagy megszakíthatja a végrehajtást ezen a ponton.
Következtetés
A hibakeresésnek nem kell bonyolultnak lennie, és ha ezt a fenti módszerek bármelyikével elkezdi, szervesnek találja a szkript fejlesztési igényeinek megfelelően. Nézze meg, hogyan kezdheti el a PowerShell hibakeresését ma!
