Debug-Runspace
Elindít egy interaktív hibakeresési munkamenetet egy futtatótérrel.
Syntax
Debug-Runspace
[-Runspace] <Runspace>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Runspace
[-Name] <String>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Runspace
[-Id] <Int32>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Runspace
[-InstanceId] <Guid>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
A Debug-Runspace
parancsmag egy interaktív hibakeresési munkamenetet indít el egy helyi vagy távoli aktív futtatótérrel. Megkereshet egy olyan futtatóteret, amelyet először a Get-Process
PowerShell-hez társított folyamatok kereséséhez, majd Enter-PSHostProcess
a folyamathoz csatolandó azonosító paraméterben megadott folyamatazonosítóval, majd Get-Runspace
a PowerShell-gazdagép folyamatán belüli futtatóterek listázásával szeretne megkeresni.
Miután kiválasztotta a hibakereséshez használt futtatóteret, ha a futtatótér jelenleg parancsot vagy szkriptet futtat, vagy ha a szkript leállt egy töréspontnál, a PowerShell megnyitja a futtató tér távoli hibakereső munkamenetét. A futtatókörnyezet szkriptjének hibakeresése ugyanúgy történik, mint a távoli munkamenet-szkriptek hibakeresése.
Csak akkor csatolhat PowerShell-gazdagépfolyamathoz, ha Ön rendszergazda a folyamatot futtató számítógépen, vagy a hibakereséshez használni kívánt szkriptet futtatja. Emellett nem adhatja meg az aktuális PowerShell-munkamenetet futtató gazdafolyamatot. Csak olyan gazdagépfolyamatot adhat meg, amely egy másik PowerShell-munkamenetet futtat.
Példák
1. példa: Távoli futtatótér hibakeresése
Ebben a példában egy távoli számítógépen megnyitott runspace(WS10TestServer) hibakeresését végezheti el. A parancs első sorában a távoli számítógépen fut Get-Process
, és szűr a Windows PowerShell-gazdagépfolyamatokra. Ebben a példában az 1152-as folyamatazonosítót, a Windows PowerShell I Standard kiadás gazdagépfolyamatot szeretné hibakeresésre használni.
PS C:\> Get-Process -ComputerName "WS10TestServer" -Name "*powershell*"
Handles WS(K) VM(M) CPU(s) Id ProcessName
------- ----- ----- ------ -- -----------
377 69912 63 2.09 2420 powershell
399 123396 829 4.48 1152 powershell_ise
PS C:\> Enter-PSSession -ComputerName "WS10TestServer"
[WS10TestServer]:PS C:\> Enter-PSHostProcess -Id 1152
[WS10TestServer:][Process:1152]: PS C:\Users\Test\Documents> Get-Runspace
Id Name ComputerName Type State Availability
-- ---- ------------ ---- ----- ------------
1 Runspace1 WS10TestServer Remote Opened Available
2 RemoteHost WS10TestServer Remote Opened Busy
[WS10TestServer][Process:1152]: PS C:\Users\Test\Documents> Debug-Runspace -Id 2
Hit Line breakpoint on 'C:\TestWFVar1.ps1:83'
At C:\TestWFVar1.ps1:83 char:1
+ $scriptVar = "Script Variable"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Process:1152]: [RSDBG: 2]: PS C:\> >
A második parancsban egy távoli munkamenet megnyitásához fut Enter-PSSession
a WS10TestServeren. A harmadik parancsban a távoli kiszolgálón Enter-PSHostProcess
futó Windows PowerShell I Standard kiadás gazdafolyamathoz csatolja, és megadja az első parancsban, az 1152-ben beszerzett gazdafolyamat azonosítóját.
A negyedik parancsban az 1152-ben futtatott folyamatazonosítóhoz elérhető futtatótereket sorolja fel Get-Runspace
.
Jegyezze fel a Foglalt futtatótér azonosítószámát; egy olyan szkriptet futtat, amelyet hibakeresésre szeretne használni.
Az utolsó parancsban egy szkriptet TestWFVar1.ps1
futtató megnyitott runspace hibakeresését kezdi el, a futtatással Debug-Runspace
, és a 2. azonosítójú azonosító alapján azonosítja a futtatóteret az Azonosító paraméter hozzáadásával. Mivel van egy töréspont a szkriptben, megnyílik a hibakereső.
Paraméterek
-BreakAll
Lehetővé teszi, hogy azonnal megszakadjon az aktuális helyen, amikor a hibakereső csatlakozik.
Ez a paraméter a PowerShell 7.2-ben lett hozzáadva.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Jóváhagyást kér a parancsmag futtatása előtt.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | True |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Egy futtatótér azonosítószámát adja meg. Futtathat Get-Runspace
a futtatókörnyezet azonosítóinak megjelenítéséhez.
Type: | Int32 |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InstanceId
A futtatókörnyezetet a példányazonosítója alapján adja meg, amely a futtatással Get-Runspace
megjeleníthető GUID.
Type: | Guid |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Egy futtatóteret a neve alapján határoz meg. Futtathat Get-Runspace
a futtatóterek nevének megjelenítéséhez.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Runspace
Runspace objektumot ad meg. A paraméter értékének megadásának legegyszerűbb módja egy olyan változó megadása, amely egy szűrt Get-Runspace
parancs eredményeit tartalmazza.
Type: | Runspace |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | True |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Bevitelek
A parancsok eredményeit Get-Runspace
erre a parancsmagra irányíthatja.
Jegyzetek
Debug-Runspace
Megnyitott állapotban lévő runspace-eken működik. Ha egy runspace-állapot a Megnyitásról egy másik állapotra változik, a rendszer automatikusan eltávolítja a futtató listában. A futtató tér csak akkor lesz hozzáadva a futó listához, ha megfelel az alábbi feltételeknek.
- Ha az Invoke-Command parancsból származik; azaz guid azonosítóval
Invoke-Command
rendelkezik. - Ha a forrásból
Debug-Runspace
származik, akkor guid azonosítóval rendelkezikDebug-Runspace
. - Ha PowerShell-munkafolyamatból származik, és a munkafolyamat-feladat azonosítója megegyezik az aktuális aktív hibakereső munkafolyamat-feladatazonosítójával.