Megosztás a következőn keresztül:


Debug-Runspace

Elindít egy interaktív hibakeresési munkamenetet egy futtatótérrel.

Syntax

RunspaceParameterSet (Alapértelmezett)

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

A Debug-Runspace parancsmag egy interaktív hibakeresési munkamenetet indít el egy helyi vagy távoli aktív futtatótérrel. A hibakereséshez először a Get-Process futtatásával megkeresheti a PowerShell-hez társított folyamatokat, 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ához.

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 futtatja a Get-Process a távoli számítógépen, és szűri a Windows PowerShell-gazdagépfolyamatokat. Ebben a példában az 1152-as folyamatazonosítót, a Windows PowerShell ISE 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 a Enter-PSSession futtatásával nyisson meg egy távoli munkamenetet a WS10TestServeren. A harmadik parancsban a távoli kiszolgálón futó Windows PowerShell ISE gazdafolyamathoz csatolja a Enter-PSHostProcessfuttatásával, és megadja az első parancsban, az 1152-ben beszerzett gazdafolyamat azonosítóját.

A negyedik parancsban Get-Runspacefuttatásával listázhatja az 1152-s folyamatazonosítóhoz elérhető futtatótereket. 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 futtató megnyitott runspace hibakeresését kezdi el, TestWFVar1.ps1Debug-Runspacefuttatásával, és a 2. azonosító alapján azonosítja a futtatóteret a 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 az aktuális helyen azonnal megszakítsa a végrehajtást, amikor a hibakereső elindul.

Ez a paraméter a PowerShell 7.2-ben lett hozzáadva.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Confirm

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:True
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték: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.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

IdParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-InstanceId

A futtatóteret a példányazonosítója alapján adja meg, amely a Get-Runspacefuttatásával megjeleníthető GUID.

Paramétertulajdonságok

Típus:Guid
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

InstanceIdParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Name

Egy futtatóteret a neve alapján határoz meg. Futtathat Get-Runspace a futtatóterek nevének megjelenítéséhez.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

NameParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték: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.

Paramétertulajdonságok

Típus:Runspace
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

RunspaceParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:True
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

Runspace

Egy Get-Runspace parancs eredményét erre a parancsmagra adhatja.

Jegyzetek

Debug-Runspace megnyitott állapotú futtatótereken 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; vagyis Invoke-Command GUID azonosítóval rendelkezik.
  • Ha Debug-Runspace; azaz Debug-Runspace GUID azonosítóval rendelkezik.
  • 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.