Töréspontok használata Windows PowerShell-szkriptekben
A töréspontok szüneteltetik a szkripteket, és interaktív parancssort biztosítanak. Az interaktív parancssorban lekérdezheti vagy módosíthatja a változóértékeket, majd folytathatja a szkriptet. Töréspontok használatával elháríthatja a szkripteket, ha azok nem a várt módon működnek.
A Windows PowerShell-parancssorban a Set-PSBreakPoint parancsmaggal állíthat be töréspontokat. A töréspontok a szkript vonala, egy használt parancs vagy egy használt változó alapján állíthatók be. Az alábbi példa bemutatja, hogyan állíthat be töréspontot egy szkript adott sorában:
Set-PSBreakPoint -Script "MyScript.ps1" -Line 23
Ha sor alapján állít be töréspontot, a szkript szerkesztésekor óvatosnak kell lennie. A szkript szerkesztésekor sorokat vehet fel vagy távolíthat el, és a töréspont nem érinti ugyanazt a kódot, amelyet eredetileg tervezett.
Az alábbi példa bemutatja, hogyan állíthat be töréspontot egy adott parancshoz:
Set-PSBreakPoint -Command "Set-ADUser" -Script "MyScript.ps1"
Ha parancs alapján állít be töréspontot, helyettesítő karaktereket is megadhat. A *-ADUser érték használatával például létrehozhat egy töréspontot a Get-ADUser, a Set-ADUser, a New-ADUser és a Remove-ADUser számára.
Egy adott változó töréspontjának beállításához tegye a következőket:
Set-PSBreakPoint -Variable "computer" -Script "MyScript.ps1" -Mode ReadWrite
A változók -Mode paraméterével meghatározhatja, hogy a változó értékének olvasása, írása vagy mindkettő esetén meg szeretne-e szakítani. Az érvényes értékek az Olvasás, az Írás és a ReadWrite.
A Set-PSBreakPoint alapértelmezett művelete a törés, amely az interaktív parancssort biztosítja. A -Action paraméterrel azonban megadhatja a helyette futó kódot. Ez lehetővé teszi olyan összetett műveletek végrehajtását, mint például a változóértékek kiértékelése, és csak akkor törik meg, ha az érték egy adott tartományon kívül esik.
Feljegyzés
A töréspontok nem a szkript részeként, hanem a memóriában vannak tárolva. A rendszer nem oszt meg töréspontokat több Windows PowerShell-kérés között, és a parancssor bezárásakor el lesz távolítva.
PowerShell ISE
A Windows PowerShell integrált szkriptelési környezetében (ISE) a töréspontokat a sor alapján állíthatja be. A töréspontokhoz kapcsolódó beállítások a Hibakeresés menüben találhatók. A töréspontokként konfigurált vonalak ki vannak emelve, így könnyen azonosíthatók. A Windows PowerShell ISE-ben a szkript sorainak hozzáadásakor vagy eltávolításakor a töréspontok automatikusan frissülnek a megfelelő sorszámmal.
Visual Studio Code
A Microsoft Visual Studio Code lehetővé teszi a Töréspontok beállítását és használatát a PowerShell ISE-nél fejlettebb beállításokkal. Konfigurálhat olyan feltételes töréspontokat, amelyek akkor aktiválódnak, ha a változók egy tartományon kívül vannak, vagy egy adott értéknek felelnek meg.
A változók tartalmával kapcsolatos információk a Visual Studio Code-ban is könnyebben megtalálhatók. Miután egy töréspont aktiválódott, és a hibakeresőben van, van egy változószakasz, amely megjeleníti a változók tartalmát, hogy ne kelljen elemeznie őket.