Debug-Runspace
Spustí interaktivní ladicí relaci s prostředím Runspace.
Syntax
RunspaceParameterSet (Výchozí)
Debug-Runspace
[-Runspace] <Runspace>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
NameParameterSet
Debug-Runspace
[-Name] <String>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
IdParameterSet
Debug-Runspace
[-Id] <Int32>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InstanceIdParameterSet
Debug-Runspace
[-InstanceId] <Guid>
[-BreakAll]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Rutina Debug-Runspace spustí interaktivní ladicí relaci s místním nebo vzdáleným aktivním prostředím runspace. Runspace, který chcete ladit, najdete tak, že nejprve spustíte Get-Process a vyhledáte procesy přidružené k PowerShellu, a pak Enter-PSHostProcess s ID procesu zadaným v parametru ID pro připojení k procesu a potom Get-Runspace k výpisu prostředí Runspace v rámci hostitelského procesu PowerShellu.
Po výběru runspace k ladění, pokud runspace právě spouští příkaz nebo skript nebo pokud je skript zastaven na zarážce, PowerShell otevře vzdálenou relaci ladicího programu pro runspace. Skript runspace můžete ladit stejným způsobem, jakým jsou laděné skripty vzdálené relace.
K hostitelskému procesu PowerShellu se můžete připojit pouze v případě, že jste správcem v počítači, na kterém je proces spuštěný, nebo spouštíte skript, který chcete ladit. Také nelze zadat hostitelský proces, na kterém běží aktuální relace PowerShellu. Můžete zadat pouze hostitelský proces, na kterém běží jiná relace PowerShellu.
Příklady
Příklad 1: Ladění vzdáleného prostředí runspace
V tomto příkladu ladíte runspace, který je otevřený ve vzdáleném počítači WS10TestServer. Na prvním řádku příkazu spustíte Get-Process na vzdáleném počítači a vyfiltrujete hostitelské procesy Windows PowerShellu. V tomto příkladu chcete ladit proces s ID 1152, proces hostitele integrovaného skriptového prostředí (ISE) windows PowerShellu.
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:\> >
V druhém příkazu spustíte Enter-PSSession a otevřete vzdálenou relaci na WS10TestServer. Ve třetím příkazu připojíte proces hostitele prostředí Windows PowerShell ISE spuštěný na vzdáleném serveru spuštěním Enter-PSHostProcessa zadáte ID hostitelského procesu, který jste získali v prvním příkazu 1152.
Ve čtvrtém příkazu zobrazíte seznam dostupných prostředí runspace pro id procesu 1152 spuštěním Get-Runspace.
Poznamenejte si číslo ID prostředí Busy runspace; spouští skript, který chcete ladit.
V posledním příkazu spustíte ladění otevřeného prostředí runspace, který spouští skript, TestWFVar1.ps1, spuštěním Debug-Runspacea identifikací runspace podle ID 2 přidáním ID parametru. Vzhledem k tomu, že ve skriptu je zarážka, otevře se ladicí program.
Parametry
-BreakAll
Umožňuje okamžitě přerušit aktuální umístění při připojení ladicího programu.
Tento parametr byl přidán v PowerShellu 7.2.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Confirm
Před spuštěním cmdletu vás vyzve k potvrzení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | True |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | viz |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Id
Určuje číslo ID runspace. Můžete spustit Get-Runspace a zobrazit ID prostředí Runspace.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
IdParameterSet
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-InstanceId
Určuje runspace podle ID instance, identifikátor GUID, který můžete zobrazit spuštěním Get-Runspace.
Vlastnosti parametru
| Typ: | Guid |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
InstanceIdParameterSet
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Name
Určuje runspace podle názvu. Spuštěním Get-Runspace můžete zobrazit názvy prostředí runspace.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
NameParameterSet
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Runspace
Určuje objekt runspace. Nejjednodušší způsob, jak zadat hodnotu pro tento parametr, je zadat proměnnou, která obsahuje výsledky filtrovaného příkazu Get-Runspace.
Vlastnosti parametru
| Typ: | Runspace |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
RunspaceParameterSet
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-WhatIf
Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | True |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Wi |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
Runspace
Výsledky příkazu Get-Runspace můžete do této rutiny převést.
Poznámky
Debug-Runspace funguje na prostředí runspace, které jsou ve stavu Otevření. Pokud se stav runspace změní z otevřeného do jiného stavu, tento runspace se automaticky odebere ze spuštěného seznamu. Runspace se přidá do spuštěného seznamu pouze v případě, že splňuje následující kritéria.
- Pokud pochází z příkazu Invoke-Command; to znamená, že má IDENTIFIKÁTOR GUID
Invoke-Command. - Pokud pochází z
Debug-Runspace; to znamená, že má IDENTIFIKÁTOR GUIDDebug-Runspace. - Pokud pochází z pracovního postupu PowerShellu a JEHO ID úlohy pracovního postupu je stejné jako aktuální ID úlohy pracovního postupu aktivního ladicího programu.