Get-Job

Hämtar PowerShell-bakgrundsjobb som körs i den aktuella sessionen.

Syntax

Get-Job
   [-IncludeChildJob]
   [-ChildJobState <JobState>]
   [-HasMoreData <Boolean>]
   [-Before <DateTime>]
   [-After <DateTime>]
   [-Newest <Int32>]
   [[-Id] <Int32[]>]
   [<CommonParameters>]
Get-Job
   [-IncludeChildJob]
   [-ChildJobState <JobState>]
   [-HasMoreData <Boolean>]
   [-Before <DateTime>]
   [-After <DateTime>]
   [-Newest <Int32>]
   [-InstanceId] <Guid[]>
   [<CommonParameters>]
Get-Job
   [-IncludeChildJob]
   [-ChildJobState <JobState>]
   [-HasMoreData <Boolean>]
   [-Before <DateTime>]
   [-After <DateTime>]
   [-Newest <Int32>]
   [-Name] <String[]>
   [<CommonParameters>]
Get-Job
   [-IncludeChildJob]
   [-ChildJobState <JobState>]
   [-HasMoreData <Boolean>]
   [-Before <DateTime>]
   [-After <DateTime>]
   [-Newest <Int32>]
   [-State] <JobState>
   [<CommonParameters>]
Get-Job
   [-IncludeChildJob]
   [-ChildJobState <JobState>]
   [-HasMoreData <Boolean>]
   [-Before <DateTime>]
   [-After <DateTime>]
   [-Newest <Int32>]
   [-Command <String[]>]
   [<CommonParameters>]
Get-Job
   [-Filter] <Hashtable>
   [<CommonParameters>]

Description

Cmdleten Get-Job hämtar objekt som representerar bakgrundsjobben som startades i den aktuella sessionen. Du kan använda Get-Job för att hämta jobb som har startats med hjälp av cmdleten Start-Job eller med hjälp av asjob-parametern för valfri cmdlet.

Utan parametrar hämtar ett Get-Job kommando alla jobb i den aktuella sessionen. Du kan använda parametrarna Get-Job för för att hämta specifika jobb.

Jobbobjektet som Get-Job returnerar innehåller användbar information om jobbet, men det innehåller inte jobbresultatet. Använd cmdleten för Receive-Job att hämta resultaten.

Ett Windows PowerShell-bakgrundsjobb är ett kommando som körs i bakgrunden utan att interagera med den aktuella sessionen. Vanligtvis använder du ett bakgrundsjobb för att köra ett komplext kommando som tar lång tid att slutföra. Mer information om bakgrundsjobb i Windows PowerShell finns i about_Jobs.

Från och med Windows PowerShell 3.0 hämtar cmdleten Get-Job även anpassade jobbtyper, till exempel arbetsflödesjobb och instanser av schemalagda jobb. Om du vill hitta jobbtypen för ett jobb använder du egenskapen PSJobTypeName för jobbet.

Om du vill aktivera Get-Job för att hämta en anpassad jobbtyp importerar du modulen som stöder den anpassade jobbtypen till sessionen innan du kör ett Get-Job kommando, antingen med hjälp av cmdleten Import-Module eller genom att använda eller hämta en cmdlet i modulen. Information om en viss typ av anpassat jobb finns i dokumentationen för funktionen för anpassad jobbtyp.

Exempel

Exempel 1: Få igång alla bakgrundsjobb i den aktuella sessionen

Med det här kommandot startas alla bakgrundsjobb i den aktuella sessionen. Den innehåller inte jobb som skapats i andra sessioner, även om jobben körs på den lokala datorn.

Get-Job

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
1      Job1            BackgroundJob   Completed     True            localhost             $env:COMPUTERNAME

Exempel 2: Stoppa ett jobb med hjälp av ett instans-ID

Dessa kommandon visar hur du hämtar instans-ID för ett jobb och sedan använder det för att stoppa ett jobb. Till skillnad från namnet på ett jobb, som inte är unikt, är instans-ID:t unikt.

Det första kommandot använder cmdleten Get-Job för att hämta ett jobb. Den använder parametern Namn för att identifiera jobbet. Kommandot lagrar jobbobjektet som Get-Job returneras i variabeln $j . I det här exemplet finns det bara ett jobb med det angivna namnet. Det andra kommandot hämtar egenskapen InstanceId för objektet i variabeln $j och lagrar det i variabeln $ID . Det tredje kommandot visar variabelns $ID värde. Det fjärde kommandot använder Stop-Job cmdlet för att stoppa jobbet. Den använder parametern InstanceId för att identifiera jobbet och $ID variabeln för att representera jobbets instans-ID.

$j = Get-Job -Name Job1
$ID = $j.InstanceID
$ID

Guid
----
03c3232e-1d23-453b-a6f4-ed73c9e29d55

Stop-Job -InstanceId $ID

Exempel 3: Hämta jobb som innehåller ett specifikt kommando

Det här kommandot hämtar jobben i systemet som innehåller ett Get-Process kommando. Kommandot använder kommandoparametern Get-Job för för att begränsa de jobb som hämtas. Kommandot använder jokertecken (*) för att hämta jobb som innehåller ett Get-Process kommando var som helst i kommandosträngen.

Get-Job -Command "*Get-Process*"

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
3      Job3            BackgroundJob   Running       True            localhost            Get-Process

Exempel 4: Hämta jobb som innehåller ett specifikt kommando med hjälp av pipelinen

Precis som kommandot i föregående exempel hämtar det här kommandot jobben i systemet som innehåller ett Get-Process kommando. Kommandot använder en pipelineoperator (|) för att skicka en PSCustomObject med Kommandot NoteProperty till cmdletenGet-Job. Det motsvarar föregående kommando.

[pscustomobject]@{Command='*Get-Process*'} | Get-Job

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
3      Job3            BackgroundJob   Running       True            localhost            Get-Process

Exempel 5: Hämta jobb som inte har startats

Det här kommandot hämtar bara de jobb som har skapats men som ännu inte har startats. Detta inkluderar jobb som är schemalagda att köras i framtiden och de som ännu inte har schemalagts.

Get-Job -State NotStarted

Exempel 6: Hämta jobb som inte har tilldelats ett namn

Det här kommandot hämtar alla jobb som har jobbnamn som börjar med jobbet. Eftersom job<number> är standardnamnet för ett jobb hämtar det här kommandot alla jobb som inte har ett uttryckligt tilldelat namn.

Get-Job -Name Job*

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
1      Job1            BackgroundJob   Completed     True            localhost             $env:COMPUTERNAME

Exempel 7: Använd ett jobbobjekt för att representera jobbet i ett kommando

Det här exemplet visar hur du använder Get-Job för att hämta ett jobbobjekt och visar sedan hur du använder jobbobjektet för att representera jobbet i ett kommando.

Det första kommandot använder cmdleten Start-Job för att starta ett bakgrundsjobb som kör ett Get-Process kommando på den lokala datorn. Kommandot använder parametern Start-Job Namn för för att tilldela jobbet ett eget namn. Det andra kommandot använder Get-Job för att hämta jobbet. Den använder parametern Get-Job Namn för för att identifiera jobbet. Kommandot sparar det resulterande jobbobjektet i variabeln $j . Det tredje kommandot visar värdet för jobbobjektet i variabeln $j . Värdet för egenskapen State visar att jobbet har slutförts. Värdet för egenskapen HasMoreData visar att det finns tillgängliga resultat från jobbet som ännu inte har hämtats. Det fjärde kommandot använder cmdleten Receive-Job för att hämta resultatet av jobbet. Den använder jobbobjektet i variabeln $j för att representera jobbet. Du kan också använda en pipelineoperator för att skicka ett jobbobjekt till Receive-Job.

Start-Job -ScriptBlock {Get-Process} -Name MyJob
$j = Get-Job -Name MyJob
$j

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
6      MyJob           BackgroundJob   Completed     True            localhost            Get-Process

Receive-Job -Job $j

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
    124       4    13572      12080    59            1140 audiodg
    783      16    11428      13636   100             548 CcmExec
     96       4     4252       3764    59            3856 ccmsetup
...

Exempel 8: Hämta alla jobb inklusive jobb som startats med en annan metod

Det här exemplet visar att cmdleten Get-Job kan hämta alla jobb som startades i den aktuella sessionen, även om de startades med olika metoder.

Det första kommandot använder cmdleten Start-Job för att starta ett jobb på den lokala datorn. Det andra kommandot använder parametern AsJob för cmdleten Invoke-Command för att starta ett jobb på S1-datorn. Även om kommandona i jobbet körs på fjärrdatorn skapas jobbobjektet på den lokala datorn, så du använder lokala kommandon för att hantera jobbet. Det tredje kommandot använder cmdleten Invoke-Command för att köra ett Start-Job kommando på S2-datorn. Med den här metoden skapas jobbobjektet på fjärrdatorn, så du använder fjärrkommandon för att hantera jobbet. Det fjärde kommandot använder Get-Job för att hämta jobben som lagras på den lokala datorn. PsJobTypeName-egenskapen för jobb, som introducerades i Windows PowerShell 3.0, visar att det lokala jobb som startas med hjälp av cmdleten Start-Job är ett bakgrundsjobb och att jobbet som startades i en fjärrsession med hjälp av cmdleten Invoke-Command är ett fjärrjobb. Det femte, sjätte och sjunde kommandot använder cmdleten New-PSSession för att skapa en PSSession som är ansluten till S2-datorn. Den använder Invoke-Command för att starta ett jobb på fjärrdatorn med hjälp av parametern PSSession och Session . Det hämtar sedan jobbet med kommandot Get-Job på S2-datorn med hjälp av PSSession. Exempelutdata visar resultatet av Get-Job kommandot. På S2-datorn verkar jobbet vara ett lokalt jobb. Datornamnet är localhost och jobbtypen är ett bakgrundsjobb. Mer information om hur du kör bakgrundsjobb på fjärrdatorer finns i about_Remote_Jobs.

Start-Job -ScriptBlock {Get-EventLog -LogName System}
Invoke-Command -ComputerName S1 -ScriptBlock {Get-EventLog -LogName System} -AsJob
Invoke-Command -ComputerName S2 -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog -LogName System}}
Get-Job

Id     Name       PSJobTypeName   State         HasMoreData     Location        Command
--     ----       -------------   -----         -----------     --------        -------
1      Job1       BackgroundJob   Running       True            localhost       Get-EventLog System
2      Job2       RemoteJob       Running       True            S1              Get-EventLog System

$Session = New-PSSession -ComputerName S2
Invoke-Command -Session $Session -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog -LogName System}}
Invoke-Command -Session $Session -ScriptBlock {Get-Job}

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command                   PSComputerName
--     ----            -------------   -----         -----------     --------             -------                   --------------
1      Job1            BackgroundJob   Running       True            localhost            Get-EventLog -LogName Sy… S2

Exempel 9: Undersöka ett misslyckat jobb

Det här kommandot visar hur du använder jobbobjektet som Get-Job returneras för att undersöka varför ett jobb misslyckades. Den visar också hur du hämtar underordnade jobb för varje jobb.

Det första kommandot använder cmdleten Start-Job för att starta ett jobb på den lokala datorn. Jobbobjektet som Start-Job returnerar visar att jobbet misslyckades. Värdet för egenskapen State är Failed (Misslyckades).

Det andra kommandot använder cmdleten Get-Job för att hämta jobbet. Kommandot använder dot-metoden för att hämta värdet för egenskapen JobStateInfo för objektet. Den använder en pipelineoperator för att skicka objektet i egenskapen JobStateInfo till cmdleten Format-List , som formaterar alla egenskaper för objektet (*) i en lista. Resultatet av Format-List kommandot visar att värdet för egenskapen Reason för jobbet är tomt.

Det tredje kommandot undersöker mer. Det använder ett Get-Job kommando för att hämta jobbet och använder sedan en pipelineoperator för att skicka hela jobbobjektet till cmdleten Format-List , som visar alla egenskaper för jobbet i en lista. Visningen av alla egenskaper i jobbobjektet visar att jobbet innehåller ett underordnat jobb med namnet Job2.

Det fjärde kommandot använder Get-Job för att hämta jobbobjektet som representerar jobb2-underordnat jobb. Det här är jobbet där kommandot faktiskt kördes. Den använder dot-metoden för att hämta egenskapen Reason för egenskapen JobStateInfo . Resultatet visar att jobbet misslyckades på grund av ett fel om nekad åtkomst. I det här fallet har användaren glömt att använda alternativet Kör som administratör när du startar Windows PowerShell.Eftersom bakgrundsjobb använder fjärrkommunikationsfunktionerna i Windows PowerShell måste datorn konfigureras för fjärrkommunikation för att kunna köra ett jobb, även när jobbet körs på den lokala datorn. Information om kraven för fjärrkommunikation i Windows PowerShell finns i about_Remote_Requirements. Felsökningstips finns i about_Remote_Troubleshooting.

PS> Start-Job -ScriptBlock {Get-Process}
Id     Name       PSJobTypeName   State       HasMoreData     Location             Command
--     ----       -------------   -----       -----------     --------             -------
1      Job1       BackgroundJob   Failed      False           localhost            Get-Process

PS> (Get-Job).JobStateInfo | Format-List -Property *
State  : Failed
Reason :

PS> Get-Job | Format-List -Property *
HasMoreData   : False
StatusMessage :
Location      : localhost
Command       : get-process
JobStateInfo  : Failed
Finished      : System.Threading.ManualReset
EventInstanceId    : fb792295-1318-4f5d-8ac8-8a89c5261507
Id            : 1
Name          : Job1
ChildJobs     : {Job2}
Output        : {}
Error         : {}
Progress      : {}
Verbose       : {}
Debug         : {}
Warning       : {}
StateChanged  :

PS> (Get-Job -Name job2).JobStateInfo.Reason
Connecting to remote server using WSManCreateShellEx api failed. The async callback gave the
following error message: Access is denied.

Exempel 10: Hämta filtrerade resultat

Det här exemplet visar hur du använder filterparametern för att hämta ett arbetsflödesjobb. Filterparametern som introducerades i Windows PowerShell 3.0 är endast giltig för anpassade jobbtyper, till exempel arbetsflödesjobb och schemalagda jobb.

Det första kommandot använder nyckelordet Arbetsflöde för att skapa WFProcess-arbetsflödet. Det andra kommandot använder asjob-parametern för WFProcess-arbetsflödet för att köra arbetsflödet som ett bakgrundsjobb. Den använder parametern JobName i arbetsflödet för att ange ett namn för jobbet och parametern PSPrivateMetadata i arbetsflödet för att ange ett anpassat ID. Det tredje kommandot använder filterparameternGet-Job för för att hämta jobbet efter anpassat ID som angavs i parametern PSPrivateMetadata .

PS> Workflow WFProcess {Get-Process}
PS> WFProcess -AsJob -JobName WFProcessJob -PSPrivateMetadata @{MyCustomId = 92107}
PS> Get-Job -Filter @{MyCustomId = 92107}
Id     Name            State         HasMoreData     Location             Command
--     ----            -----         -----------     --------             -------
1      WFProcessJob    Completed     True            localhost            WFProcess

Exempel 11: Hämta information om underordnade jobb

Det här exemplet visar effekten av att använda parametrarna IncludeChildJob och ChildJobState för cmdleten Get-Job.

Det första kommandot hämtar jobben i den aktuella sessionen. Utdata innehåller ett bakgrundsjobb, ett fjärrjobb och flera instanser av ett schemalagt jobb. Fjärrjobbet Job4 verkar ha misslyckats. Det andra kommandot använder parametern IncludeChildJob för Get-Job. Utdata lägger till underordnade jobb för alla jobb som har underordnade jobb. I det här fallet visar de reviderade utdata att endast jobb5-underordnat jobb för Job4 misslyckades. Det tredje kommandot använder parametern ChildJobState med värdet Failed.Utdata innehåller alla överordnade jobb och endast de underordnade jobb som misslyckades. Det femte kommandot använder egenskapen JobStateInfo för jobb och dess reason-egenskap för att ta reda på varför Job5 misslyckades.

PS> Get-Job

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
2      Job2            BackgroundJob   Completed     True            localhost            .\Get-Archive.ps1
4      Job4            RemoteJob       Failed        True            Server01, Server02   .\Get-Archive.ps1
7      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
8      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
9      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
10     UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help

PS> Get-Job -IncludeChildJob

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
2      Job2            BackgroundJob   Completed     True            localhost           .\Get-Archive.ps1
3      Job3                            Completed     True            localhost           .\Get-Archive.ps1
4      Job4            RemoteJob       Failed        True            Server01, Server02  .\Get-Archive.ps1
5      Job5                            Failed        False           Server01            .\Get-Archive.ps1
6      Job6                            Completed     True            Server02            .\Get-Archive.ps1
7      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
8      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
9      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
10     UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help

PS> Get-Job -Name Job4 -ChildJobState Failed

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
2      Job2            BackgroundJob   Completed     True            localhost           .\Get-Archive.ps1
4      Job4            RemoteJob       Failed        True            Server01, Server02  .\Get-Archive.ps1
5      Job5                            Failed        False           Server01            .\Get-Archive.ps1
7      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
8      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
9      UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help
10     UpdateHelpJob   PSScheduledJob  Completed     True            localhost            Update-Help

PS> (Get-Job -Name Job5).JobStateInfo.Reason

Connecting to remote server Server01 failed with the following error message:
Access is denied.

Mer information finns i avsnittet about_Remote_Troubleshooting Hjälp.

Parametrar

-After

Hämtar slutförda jobb som avslutades efter angivet datum och tid. Ange ett DateTime-objekt , till exempel ett som returneras av cmdleten Get-Date eller en sträng som kan konverteras till ett DateTime-objekt , till exempel Dec 1, 2012 2:00 AM eller 11/06.

Den här parametern fungerar bara på anpassade jobbtyper, till exempel arbetsflödesjobb och schemalagda jobb, som har en EndTime-egenskap . Det fungerar inte på standardbakgrundsjobb, till exempel de som skapas med hjälp av cmdleten Start-Job . Information om stöd för den här parametern finns i hjälpavsnittet för jobbtypen.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Before

Hämtar slutförda jobb som avslutades före angivet datum och tid. Ange ett DateTime-objekt .

Den här parametern fungerar bara på anpassade jobbtyper, till exempel arbetsflödesjobb och schemalagda jobb, som har en EndTime-egenskap . Det fungerar inte på standardbakgrundsjobb, till exempel de som skapas med hjälp av cmdleten Start-Job . Information om stöd för den här parametern finns i hjälpavsnittet för jobbtypen.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:DateTime
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ChildJobState

Hämtar endast de underordnade jobb som har det angivna tillståndet. De acceptabla värdena för den här parametern är:

  • NotStarted
  • Körs
  • Slutförd
  • Misslyckad
  • Stoppat
  • Spärrad
  • Inaktiverad
  • Frånkopplad
  • Avbryter
  • Stoppas

Som standard Get-Job får inte underordnade jobb. Med parametern IncludeChildJobGet-Job hämtar du alla underordnade jobb. Om du använder parametern ChildJobState har parametern IncludeChildJob ingen effekt.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:JobState
Accepted values:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Command

Anger en matris med kommandon som strängar. Den här cmdleten hämtar jobben som innehåller de angivna kommandona. Standardvärdet är alla jobb. Du kan använda jokertecken för att ange ett kommandomönster.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Filter

Anger en hash-tabell med villkor. Den här cmdleten hämtar jobb som uppfyller alla villkor. Ange en hash-tabell där nycklarna är jobbegenskaper och värdena är jobbegenskapsvärden.

Den här parametern fungerar bara på anpassade jobbtyper, till exempel arbetsflödesjobb och schemalagda jobb. Det fungerar inte på standardbakgrundsjobb, till exempel de som skapas med hjälp av cmdleten Start-Job . Information om stöd för den här parametern finns i hjälpavsnittet för jobbtypen.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:Hashtable
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HasMoreData

Anger om den här cmdleten bara hämtar jobb som har det angivna egenskapsvärdet HasMoreData . Egenskapen HasMoreData anger om alla jobbresultat har tagits emot i den aktuella sessionen. Om du vill hämta jobb som har fler resultat anger du värdet $True. Om du vill hämta jobb som inte har fler resultat anger du värdet $False.

Om du vill få resultatet av ett jobb använder du cmdleten Receive-Job .

När du använder cmdleten Receive-Job tar den bort resultatet som returnerades från dess minnesinterna, sessionsspecifika lagring. När det har returnerat alla resultat av jobbet i den aktuella sessionen, anger det värdet för hasmoredata-egenskapen för jobbet till $False) för att indikera att det inte har några fler resultat för jobbet i den aktuella sessionen. Använd parametern Receive-Job Behåll för för att förhindra Receive-Job att resultat tas bort och värdet för egenskapen HasMoreData ändras. Om du vill ha mer information skriver du Get-Help Receive-Job.

Egenskapen HasMoreData är specifik för den aktuella sessionen. Om resultat för en anpassad jobbtyp sparas utanför sessionen, till exempel den schemalagda jobbtypen, som sparar jobbresultat på disk, kan du använda cmdleten Receive-Job i en annan session för att hämta jobbresultatet igen, även om värdet för HasMoreData är $False. Mer information finns i hjälpavsnitten för den anpassade jobbtypen.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Anger en matris med ID:er för jobb som den här cmdleten hämtar.

ID:t är ett heltal som unikt identifierar jobbet i den aktuella sessionen. Det är lättare att komma ihåg och skriva än instans-ID, men det är bara unikt i den aktuella sessionen. Du kan skriva ett eller flera ID:t avgränsade med kommatecken. Om du vill hitta ID:t för ett jobb skriver du Get-Job utan parametrar.

Type:Int32[]
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-IncludeChildJob

Anger att den här cmdleten returnerar underordnade jobb utöver överordnade jobb.

Den här parametern är särskilt användbar för att undersöka arbetsflödesjobb, för vilka Get-Job returnerar ett överordnat containerjobb och jobbfel, eftersom orsaken till felet sparas i en egenskap för det underordnade jobbet.

Den här parametern introducerades i Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InstanceId

Anger en matris med instans-ID:t för jobb som den här cmdleten hämtar. Standardvärdet är alla jobb.

Ett instans-ID är ett GUID som unikt identifierar jobbet på datorn. Om du vill hitta instans-ID:t för ett jobb använder du Get-Job.

Type:Guid[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Anger en matris med egna instansnamn för jobb som den här cmdleten hämtar. Ange ett jobbnamn eller använd jokertecken för att ange ett jobbnamnsmönster. Som standard Get-Job hämtar alla jobb i den aktuella sessionen.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Newest

Anger ett antal jobb som ska hämtas. Den här cmdleten hämtar jobben som avslutades senast.

Parametern Newest sorterar eller returnerar inte de senaste jobben i sluttidsordning. Om du vill sortera utdata använder du cmdleten Sort-Object .

Den här parametern introducerades i Windows PowerShell 3.0.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-State

Anger ett jobbtillstånd. Den här cmdleten hämtar endast jobb i det angivna tillståndet. De acceptabla värdena för den här parametern är:

  • NotStarted
  • Körs
  • Slutförd
  • Misslyckad
  • Stoppat
  • Spärrad
  • Inaktiverad
  • Frånkopplad
  • Avbryter
  • Stoppas

Som standard Get-Job hämtar alla jobb i den aktuella sessionen.

Mer information om jobbtillstånd finns i JobState-uppräkning.

Type:JobState
Accepted values:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

System.Management.Automation.RemotingJob

Den här cmdleten returnerar objekt som representerar jobben i sessionen.

Kommentarer

PowerShell innehåller följande alias för Get-Job:

  • Alla plattformar:
    • gjb

Egenskapen PSJobTypeName för jobb anger jobbtypen för jobbet. Egenskapsvärdet bestäms av jobbtypsförfattaren. I följande lista visas vanliga jobbtyper.

  • BackgroundJob. Lokalt jobb som startats med hjälp Start-Jobav .
  • Fjärrjobb. Jobbet startades i en PSSession med hjälp av parametern AsJob för cmdleten Invoke-Command .
  • PSWorkflowJob. Jobbet startades med hjälp av den vanliga asjob-parametern för arbetsflöden.