Udostępnij za pomocą


Get-Job

Pobiera zadania w tle programu PowerShell uruchomione w bieżącej sesji.

Składnia

SessionIdParameterSet (domyślnie)

Get-Job
    [[-Id] <Int32[]>]
    [-IncludeChildJob]
    [-ChildJobState <JobState>]
    [-HasMoreData <Boolean>]
    [-Before <DateTime>]
    [-After <DateTime>]
    [-Newest <Int32>]
    [<CommonParameters>]

StateParameterSet

Get-Job
    [-State] <JobState>
    [-IncludeChildJob]
    [-ChildJobState <JobState>]
    [-HasMoreData <Boolean>]
    [-Before <DateTime>]
    [-After <DateTime>]
    [-Newest <Int32>]
    [<CommonParameters>]

CommandParameterSet

Get-Job
    [-IncludeChildJob]
    [-ChildJobState <JobState>]
    [-HasMoreData <Boolean>]
    [-Before <DateTime>]
    [-After <DateTime>]
    [-Newest <Int32>]
    [-Command <String[]>]
    [<CommonParameters>]

InstanceIdParameterSet

Get-Job
    [-InstanceId] <Guid[]>
    [-IncludeChildJob]
    [-ChildJobState <JobState>]
    [-HasMoreData <Boolean>]
    [-Before <DateTime>]
    [-After <DateTime>]
    [-Newest <Int32>]
    [<CommonParameters>]

NameParameterSet

Get-Job
    [-Name] <String[]>
    [-IncludeChildJob]
    [-ChildJobState <JobState>]
    [-HasMoreData <Boolean>]
    [-Before <DateTime>]
    [-After <DateTime>]
    [-Newest <Int32>]
    [<CommonParameters>]

FilterParameterSet

Get-Job
    [-Filter] <Hashtable>
    [<CommonParameters>]

Opis

Polecenie cmdlet Get-Job pobiera obiekty reprezentujące zadania w tle uruchomione w bieżącej sesji. Możesz użyć get-Job, aby pobrać zadania, które zostały uruchomione przy użyciu polecenia cmdlet Start-Job lub za pomocą asJob parametru dowolnego polecenia cmdlet.

Bez parametrów polecenie Get-Job pobiera wszystkie zadania w bieżącej sesji. Aby uzyskać określone zadania, możesz użyć parametrów Get-Job.

Obiekt zadania, który polecenie Get-Job zwraca przydatne informacje o zadaniu, ale nie zawiera wyników zadania. Aby uzyskać wyniki, użyj polecenia cmdlet Receive-Job.

Zadanie w tle programu Windows PowerShell to polecenie uruchamiane w tle bez interakcji z bieżącą sesją. Zazwyczaj zadanie w tle służy do uruchamiania złożonego polecenia, które trwa długo. Aby uzyskać więcej informacji na temat zadań w tle w programie Windows PowerShell, zobacz about_Jobs.

Począwszy od programu Windows PowerShell 3.0, polecenie cmdlet Get-Job pobiera również niestandardowe typy zadań, takie jak zadania przepływu pracy i wystąpienia zaplanowanych zadań. Aby znaleźć typ zadania, użyj właściwości PSJobTypeName zadania.

Aby włączyć get-Job w celu uzyskania niestandardowego typu zadania, zaimportuj moduł obsługujący typ zadania niestandardowego do sesji przed uruchomieniem polecenia get-job za pomocą polecenia cmdlet Import-Module lub polecenia cmdlet lub polecenia cmdlet w module. Aby uzyskać informacje na temat określonego niestandardowego typu zadania, zobacz dokumentację funkcji niestandardowego typu zadania.

Przykłady

Przykład 1. Pobieranie wszystkich zadań w tle uruchomionych w bieżącej sesji

PS C:\> Get-Job

To polecenie pobiera wszystkie zadania w tle uruchomione w bieżącej sesji. Nie obejmuje zadań utworzonych w innych sesjach, nawet jeśli zadania są uruchamiane na komputerze lokalnym.

Przykład 2. Zatrzymywanie zadania przy użyciu identyfikatora wystąpienia

The first command uses the **Get-Job** cmdlet to get a job. It uses the *Name* parameter to identify the job. The command stores the job object that **Get-Job** returns in the $j variable. In this example, there is only one job with the specified name.
PS C:\> $j = Get-Job -Name Job1

The second command gets the **InstanceId** property of the object in the $j variable and stores it in the $ID variable.
PS C:\> $ID = $j.InstanceID

The third command displays the value of the $ID variable.
PS C:\> $ID

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

The fourth command uses Stop-Job cmdlet to stop the job. It uses the *InstanceId* parameter to identify the job and $ID variable to represent the instance ID of the job.
PS C:\> Stop-Job -InstanceId $ID

Te polecenia pokazują, jak uzyskać identyfikator wystąpienia zadania, a następnie użyć go do zatrzymania zadania. W przeciwieństwie do nazwy zadania, które nie jest unikatowe, identyfikator wystąpienia jest unikatowy.

Przykład 3. Pobieranie zadań zawierających określone polecenie

PS C:\> Get-Job -Command "*get-process*"

To polecenie pobiera zadania w systemie, które zawierają Get-Process polecenia. Polecenie używa parametru polecenia Get-Job, aby ograniczyć pobrane zadania. Polecenie używa symboli wieloznacznych (*) do pobierania zadań zawierających get-process polecenia w dowolnym miejscu w ciągu polecenia.

Przykład 4. Pobieranie zadań zawierających określone polecenie przy użyciu potoku

PS C:\> "*get-process*" | Get-Job

Podobnie jak polecenie w poprzednim przykładzie, to polecenie pobiera zadania w systemie, które zawierają polecenie Get-Process. Polecenie używa operatora potoku (|) do wysyłania ciągu w cudzysłowie do polecenia cmdlet Get-Job. Jest to odpowiednik poprzedniego polecenia.

Przykład 5. Pobieranie zadań, które nie zostały uruchomione

PS C:\> Get-Job -State NotStarted

To polecenie pobiera tylko te zadania, które zostały utworzone, ale nie zostały jeszcze uruchomione. Obejmuje to zadania, które mają być uruchamiane w przyszłości, a nie zostały jeszcze zaplanowane.

Przykład 6. Pobieranie zadań, które nie zostały przypisane do nazwy

PS C:\> Get-Job -Name Job*

To polecenie pobiera wszystkie zadania, które mają nazwy zadań rozpoczynających się od zadania. Ponieważ<liczba zadań> jest domyślną nazwą zadania, to polecenie pobiera wszystkie zadania, które nie mają jawnie przypisanej nazwy.

Przykład 7. Używanie obiektu zadania do reprezentowania zadania w poleceniu

The first command uses the **Start-Job** cmdlet to start a background job that runs a **Get-Process** command on the local computer. The command uses the *Name* parameter of **Start-Job** to assign a friendly name to the job.
PS C:\> Start-Job -ScriptBlock {Get-Process} -Name MyJob

The second command uses Get-Job to get the job. It uses the *Name* parameter of **Get-Job** to identify the job. The command saves the resulting job object in the $j variable.
PS C:\> $j = Get-Job -Name MyJob

The third command displays the value of the job object in the $j variable. The value of the **State** property shows that the job is completed. The value of the **HasMoreData** property shows that there are results available from the job that have not yet been retrieved.
PS C:\> $j
Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
6      MyJob           BackgroundJob   Completed     True            localhost            Get-Process

The fourth command uses the **Receive-Job** cmdlet to get the results of the job. It uses the job object in the $j variable to represent the job. You can also use a pipeline operator to send a job object to **Receive-Job**.
PS C:\> 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
...

W tym przykładzie pokazano, jak użyć Get-Job w celu pobrania obiektu zadania, a następnie pokazano, jak używać obiektu zadania do reprezentowania zadania w poleceniu.

Przykład 8. Pobieranie wszystkich zadań, w tym zadań uruchomionych przez inną metodę

The first command uses the **Start-Job** cmdlet to start a job on the local computer.
PS C:\> Start-Job -ScriptBlock {Get-EventLog System}

The second command uses the *AsJob* parameter of the **Invoke-Command** cmdlet to start a job on the S1 computer. Even though the commands in the job run on the remote computer, the job object is created on the local computer, so you use local commands to manage the job.
PS C:\> Invoke-Command -ComputerName S1 -ScriptBlock {Get-EventLog System} -AsJob

The third command uses the **Invoke-Command** cmdlet to run a **Start-Job** command on the S2 computer. By using this method, the job object is created on the remote computer, so you use remote commands to manage the job.
PS C:\> Invoke-Command -ComputerName S2 -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog System}}

The fourth command uses **Get-Job** to get the jobs stored on the local computer. The **PSJobTypeName** property of jobs, introduced in Windows PowerShell 3.0, shows that the local job started by using the **Start-Job** cmdlet is a background job and the job started in a remote session by using the **Invoke-Command** cmdlet is a remote job.
PS C:\> 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

The fifth command uses **Invoke-Command** to run a **Get-Job** command on the S2 computer.The sample output shows the results of the Get-Job command. On the S2 computer, the job appears to be a local job. The computer name is localhost and the job type is a background job.For more information about how to run background jobs on remote computers, see about_Remote_Jobs.
PS C:\> Invoke-Command -ComputerName S2 -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog System}}
Id    Name     PSJobTypeName  State      HasMoreData   Location   Command
--    ----     -------------  -----      -----------   -------    -------
4     Job4     BackgroundJob  Running    True          localhost  Get-Eventlog System

W tym przykładzie pokazano, że polecenie cmdlet Get-Job może pobrać wszystkie zadania uruchomione w bieżącej sesji, nawet jeśli zostały uruchomione przy użyciu różnych metod.

Przykład 9. Badanie zadania, które zakończyło się niepowodzeniem

The first command uses the **Start-Job** cmdlet to start a job on the local computer. The job object that **Start-Job** returns shows that the job failed. The value of the **State** property is Failed.
PS C:\> Start-Job -ScriptBlock {Get-Process}
Id     Name       PSJobTypeName   State       HasMoreData     Location             Command
--     ----       -------------   -----       -----------     --------             -------
1      Job1       BackgroundJob   Failed      False           localhost            Get-Process

The second command uses the **Get-Job** cmdlet to get the job. The command uses the dot method to get the value of the **JobStateInfo** property of the object. It uses a pipeline operator to send the object in the **JobStateInfo** property to the Format-List cmdlet, which formats all of the properties of the object (*) in a list.The result of the **Format-List** command shows that the value of the **Reason** property of the job is blank.
PS C:\> (Get-Job).JobStateInfo | Format-List -Property *
State  : Failed
Reason :

The third command investigates more. It uses a **Get-Job** command to get the job and then uses a pipeline operator to send the whole job object to the **Format-List** cmdlet, which displays all of the properties of the job in a list.The display of all properties in the job object shows that the job contains a child job named Job2.
PS C:\> 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  :

The fourth command uses **Get-Job** to get the job object that represents the Job2 child job. This is the job in which the command actually ran. It uses the dot method to get the **Reason** property of the **JobStateInfo** property.The result shows that the job failed because of an Access Denied error. In this case, the user forgot to use the Run as administrator option when starting Windows PowerShell.Because background jobs use the remoting features of Windows PowerShell, the computer must be configured for remoting to run a job, even when the job runs on the local computer.For information about requirements for remoting in Windows PowerShell, see about_Remote_Requirements. For troubleshooting tips, see about_Remote_Troubleshooting.
PS C:\> (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.

To polecenie pokazuje, jak użyć obiektu zadania, który get-job powróci do zbadania, dlaczego zadanie nie powiodło się. Pokazuje również, jak uzyskać podrzędne zadania poszczególnych zadań.

Przykład 10: Pobieranie filtrowanych wyników

The first command uses the **Workflow** keyword to create the WFProcess workflow.
PS C:\> Workflow WFProcess {Get-Process}

The second command uses the *AsJob* parameter of the WFProcess workflow to run the workflow as a background job. It uses the *JobName* parameter of the workflow to specify a name for the job, and the *PSPrivateMetadata* parameter of the workflow to specify a custom ID.
PS C:\> WFProcess -AsJob -JobName WFProcessJob -PSPrivateMetadata @{MyCustomId = 92107}

The third command uses the *Filter* parameter of **Get-Job** to get the job by custom ID that was specified in the *PSPrivateMetadata* parameter.
PS C:\> Get-Job -Filter @{MyCustomId = 92107}
Id     Name            State         HasMoreData     Location             Command
--     ----            -----         -----------     --------             -------
1      WFProcessJob    Completed     True            localhost            WFProcess

W tym przykładzie pokazano, jak użyć parametru Filter w celu pobrania zadania przepływu pracy. Parametr Filter wprowadzony w programie Windows PowerShell 3.0 jest prawidłowy tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania.

Przykład 11: Uzyskiwanie informacji o zadaniach podrzędnych

The first command gets the jobs in the current session. The output includes a background job, a remote job and several instances of a scheduled job. The remote job, Job4, appears to have failed.
PS C:\> 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

The second command uses the *IncludeChildJob* parameter of **Get-Job**. The output adds the child jobs of all jobs that have child jobs.In this case, the revised output shows that only the Job5 child job of Job4 failed.
PS C:\> 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

The third command uses the *ChildJobState* parameter with a value of Failed.The output includes all parent jobs and only the child jobs that failed.
PS C:\> 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

The fifth command uses the **JobStateInfo** property of jobs and its **Reason** property to discover why Job5 failed.
PS C:\> (Get-Job -Name Job5).JobStateInfo.Reason
Connecting to remote server Server01 failed with the following error message:
Access is denied.
For more information, see the about_Remote_Troubleshooting Help topic.

W tym przykładzie pokazano efekt użycia parametrów IncludeChildJob i ChildJobState parametrów polecenia cmdlet Get-Job.

Parametry

-After

Pobiera ukończone zadania, które zakończyły się po określonej dacie i godzinie. Wprowadź obiekt DateTime, taki jak obiekt zwracany przez polecenie cmdlet Get-Date lub ciąg, który można przekonwertować na obiekt DateTime, taki jak Dec 1, 2012 2:00 AM lub 11/06.

Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania, które mają właściwość EndTime. Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu polecenia cmdlet Start-Job. Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:DateTime
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Before

Pobiera ukończone zadania, które zakończyły się przed określoną datą i godziną. Wprowadź obiekt DateTime.

Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania, które mają właściwość EndTime. Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu polecenia cmdlet Start-Job. Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:DateTime
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ChildJobState

Pobiera tylko zadania podrzędne, które mają określony stan. Dopuszczalne wartości tego parametru to:

  • Nierozpoczęty
  • Bieganie
  • Zakończone
  • Nie powiodło się
  • Zatrzymano
  • Zablokowany
  • Zawieszony
  • Odłączony
  • Zawieszenie
  • Zatrzymanie

Domyślnie get-job nie pobiera zadań podrzędnych. Używając parametru IncludeChildJob, get-Job pobiera wszystkie zadania podrzędne. Jeśli używasz parametru ChildJobState, parametr IncludeChildJob nie ma żadnego efektu.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:JobState
Domyślna wartość:None
Dopuszczalne wartości:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Command

Określa tablicę poleceń jako ciągi. To polecenie cmdlet pobiera zadania zawierające określone polecenia. Wartość domyślna to wszystkie zadania. Możesz użyć symboli wieloznacznych, aby określić wzorzec polecenia.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Filter

Określa tabelę skrótów warunków. To polecenie cmdlet pobiera zadania spełniające wszystkie warunki. Wprowadź tabelę skrótów, w której klucze są właściwościami zadania, a wartości są wartościami właściwości zadania.

Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania. Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu polecenia cmdlet Start-Job. Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Hashtable
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

FilterParameterSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-HasMoreData

Wskazuje, czy to polecenie cmdlet pobiera tylko zadania z określoną wartością właściwości HasMoreData. Właściwość HasMoreData wskazuje, czy wszystkie wyniki zadania zostały odebrane w bieżącej sesji. Aby uzyskać zadania, które mają więcej wyników, określ wartość $True. Aby uzyskać zadania, które nie mają większej liczby wyników, określ wartość $False.

Aby uzyskać wyniki zadania, użyj polecenia cmdlet Receive-Job.

Gdy używasz polecenia cmdlet Receive-Job, usuwa je z magazynu specyficznego dla sesji, który zwrócił. Gdy zwraca wszystkie wyniki zadania w bieżącej sesji, ustawia wartość właściwości HasMoreData zadania do $False), aby wskazać, że nie ma więcej wyników dla zadania w bieżącej sesji. Użyj parametru KeepReceive-Job, aby zapobiec usuwania wyników i zmieniania wartości właściwości HasMoreData. Aby uzyskać więcej informacji, wpisz Get-Help Receive-Job.

Właściwość HasMoreData jest specyficzna dla bieżącej sesji. Jeśli wyniki niestandardowego typu zadania są zapisywane poza sesją, takie jak typ zaplanowanego zadania, który zapisuje wyniki zadania na dysku, możesz użyć polecenia cmdlet Receive-Job w innej sesji, aby ponownie uzyskać wyniki zadania, nawet jeśli wartość HasMoreData jest $False. Aby uzyskać więcej informacji, zobacz tematy pomocy dotyczące niestandardowego typu zadania.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Boolean
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Id

Określa tablicę identyfikatorów zadań pobieranych przez to polecenie cmdlet.

Identyfikator jest liczbą całkowitą, która jednoznacznie identyfikuje zadanie w bieżącej sesji. Łatwiej jest zapamiętać identyfikator wystąpienia i wpisać go, ale jest on unikatowy tylko w bieżącej sesji. Można wpisać jeden lub więcej identyfikatorów rozdzielonych przecinkami. Aby znaleźć identyfikator zadania, wpisz Get-Job bez parametrów.

Właściwości parametru

Typ:

Int32[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:0
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-IncludeChildJob

Wskazuje, że to polecenie cmdlet zwraca zadania podrzędne oprócz zadań nadrzędnych.

Ten parametr jest szczególnie przydatny do badania zadań przepływu pracy, dla których Get-Job zwraca zadanie nadrzędne kontenera i niepowodzenia zadań, ponieważ przyczyna niepowodzenia jest zapisywana we właściwości zadania podrzędnego.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-InstanceId

Określa tablicę identyfikatorów wystąpień zadań pobieranych przez to polecenie cmdlet. Wartość domyślna to wszystkie zadania.

Identyfikator wystąpienia to identyfikator GUID, który jednoznacznie identyfikuje zadanie na komputerze. Aby znaleźć identyfikator wystąpienia zadania, użyj polecenia Get-Job.

Właściwości parametru

Typ:

Guid[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

InstanceIdParameterSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Name

Określa tablicę przyjaznych nazw wystąpień zadań pobieranych przez to polecenie cmdlet. Wprowadź nazwę zadania lub użyj symboli wieloznacznych, aby wprowadzić wzorzec nazwy zadania. Domyślnie get-job pobiera wszystkie zadania w bieżącej sesji.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

NameParameterSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Newest

Określa liczbę zadań do pobrania. To polecenie cmdlet pobiera ostatnio zakończone zadania.

Parametr Najnowszy nie sortuje ani nie zwraca najnowszych zadań w kolejności czasu zakończenia. Aby posortować dane wyjściowe, użyj polecenia cmdlet Sort-Object.

Ten parametr został wprowadzony w programie Windows PowerShell 3.0.

Właściwości parametru

Typ:Int32
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

SessionIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
StateParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
CommandParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
InstanceIdParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
NameParameterSet
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-State

Określa stan zadania. To polecenie cmdlet pobiera tylko zadania w określonym stanie. Dopuszczalne wartości tego parametru to:

  • Nierozpoczęty
  • Bieganie
  • Zakończone
  • Nie powiodło się
  • Zatrzymano
  • Zablokowany
  • Zawieszony
  • Odłączony
  • Zawieszenie
  • Zatrzymanie

Domyślnie get-job pobiera wszystkie zadania w bieżącej sesji.

Aby uzyskać więcej informacji na temat stanów zadań, zobacz JobState Enumeration w bibliotece MSDN.

Właściwości parametru

Typ:JobState
Domyślna wartość:None
Dopuszczalne wartości:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

StateParameterSet
Position:0
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

None

Nie można przekazać danych wejściowych potoku do tego polecenia cmdlet.

Dane wyjściowe

System.Management.Automation.RemotingJob

To polecenie cmdlet zwraca obiekty reprezentujące zadania w sesji.

Uwagi

  • Właściwość PSJobTypeName zadania wskazuje typ zadania. Wartość właściwości jest określana przez autora typu zadania. Na poniższej liście przedstawiono typowe typy zadań.

    • backgroundJob. Zadanie lokalne uruchomione przy użyciu start-job.

    • remoteJob. Zadanie uruchomione w PSSession przy użyciu parametru AsJob polecenia cmdlet Invoke-Command.

    • PSWorkflowJob . Zadanie rozpoczęte przy użyciu AsJob wspólnego parametru przepływów pracy.