Partager via


Get-Job

Obtient les travaux en arrière-plan PowerShell qui s’exécutent dans la session active.

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

L’applet Get-Job de commande obtient des objets qui représentent les travaux en arrière-plan qui ont été démarrés dans la session active. Vous pouvez utiliser Get-Job pour obtenir des travaux démarrés à l’aide de l’applet Start-Job de commande ou à l’aide du paramètre AsJob de n’importe quelle applet de commande.

Sans paramètres, une Get-Job commande obtient tous les travaux de la session active. Vous pouvez utiliser les paramètres de pour obtenir des Get-Job travaux particuliers.

L’objet de travail qui Get-Job retourne contient des informations utiles sur le travail, mais il ne contient pas les résultats du travail. Pour obtenir les résultats, utilisez l’applet de Receive-Job commande .

Une tâche en arrière-plan Windows PowerShell est une commande qui s’exécute en arrière-plan sans interagir avec la session active. En règle générale, vous utilisez un travail en arrière-plan pour exécuter une commande complexe qui prend beaucoup de temps. Pour plus d'informations sur les tâches en arrière-plan, consultez about_Jobs.

À compter de Windows PowerShell 3.0, l’applet de commande obtient également des Get-Job types de travaux personnalisés, tels que des travaux de workflow et des instances de travaux planifiés. Pour rechercher le type d'une tâche, utilisez la propriété PSJobTypeName de la tâche.

Pour activer Get-Job l’obtention d’un type de travail personnalisé, importez le module qui prend en charge le type de travail personnalisé dans la session avant d’exécuter une Get-Job commande, soit à l’aide de l’applet Import-Module de commande, soit en utilisant ou en obtenant une applet de commande dans le module. Pour plus d'informations sur un type de tâche personnalisé particulier, consultez la documentation sur la fonctionnalité de type de tâche personnalisé.

Exemples

Exemple 1 : Obtenir tous les travaux en arrière-plan démarrés dans la session active

Cette commande obtient toutes les tâches en arrière-plan démarrées dans la session active. Elle n'inclut pas les tâches créées dans d'autres sessions, même si elles s'exécutent sur l'ordinateur local.

PS C:\> Get-Job

Exemple 2 : Arrêter un travail à l’aide d’un ID de instance

Ces commandes indiquent comment obtenir l'ID d'instance d'une tâche, puis l'utiliser pour arrêter une tâche. Contrairement au nom de la tâche, qui n'est pas unique, l'ID d'instance est unique.

La première commande utilise l’applet de Get-Job commande pour obtenir un travail. Il utilise le paramètre Name pour identifier le travail. La commande stocke l’objet de travail qui Get-Job retourne dans la $j variable . Dans cet exemple, il existe une seule tâche ayant le nom spécifié. La deuxième commande obtient la propriété InstanceId de l’objet dans la variable et la $j stocke dans la $ID variable. La troisième commande affiche la valeur de la $ID variable. La quatrième commande utilise l’applet Stop-Job de commande pour arrêter le travail. Il utilise le paramètre InstanceId pour identifier le travail et $ID la variable afin de représenter l’ID de instance du travail.

PS C:\> $j = Get-Job -Name Job1
PS C:\> $ID = $j.InstanceID
PS C:\> $ID

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

PS C:\> Stop-Job -InstanceId $ID

Exemple 3 : Obtenir des travaux qui incluent une commande spécifique

Cette commande obtient les travaux sur le système qui incluent une Get-Process commande. La commande utilise le paramètre Command de Get-Job pour limiter les travaux récupérés. La commande utilise des caractères génériques (*) pour obtenir des travaux qui incluent une Get-Process commande n’importe où dans la chaîne de commande.

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

Exemple 4 : Obtenir des travaux qui incluent une commande spécifique à l’aide du pipeline

Comme la commande de l’exemple précédent, cette commande obtient les travaux sur le système qui incluent une Get-Process commande. La commande utilise un opérateur de pipeline (|) pour envoyer une chaîne, entre guillemets, à l’applet de Get-Job commande. Elle est équivalente à la commande précédente.

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

Exemple 5 : Obtenir des travaux qui n’ont pas été démarrés

Cette commande obtient uniquement les tâches qui ont été créées mais qui n'ont pas encore démarré. Cela inclut les tâches dont l'exécution est planifiée ultérieurement et celles qui ne sont pas encore planifiées.

PS C:\> Get-Job -State NotStarted

Exemple 6 : Obtenir des travaux auxquels aucun nom n’a été attribué

Cette commande obtient tous les travaux dont le nom commence par le travail. Étant donné que job<number> est le nom par défaut d’un travail, cette commande obtient tous les travaux qui n’ont pas de nom explicitement attribué.

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

Exemple 7 : utiliser un objet de travail pour représenter le travail dans une commande

Cet exemple montre comment utiliser Get-Job pour obtenir un objet de travail, puis comment utiliser l’objet de travail pour représenter le travail dans une commande.

La première commande utilise l’applet Start-Job de commande pour démarrer un travail en arrière-plan qui exécute une Get-Process commande sur l’ordinateur local. La commande utilise le paramètre Name de Start-Job pour attribuer un nom convivial au travail. La deuxième commande utilise Get-Job pour obtenir le travail. Il utilise le paramètre Name de Get-Job pour identifier le travail. La commande enregistre l’objet de travail résultant dans la $j variable . La troisième commande affiche la valeur de l’objet de travail dans la $j variable . La valeur de la propriété State indique que le travail est terminé. La valeur de la propriété HasMoreData indique que des résultats de la tâche sont disponibles, mais qu'ils n'ont pas encore été récupérés. La quatrième commande utilise l’applet Receive-Job de commande pour obtenir les résultats du travail. Il utilise l’objet de travail dans la $j variable pour représenter le travail. Vous pouvez également utiliser un opérateur de pipeline pour envoyer un objet de travail à Receive-Job.

PS C:\> Start-Job -ScriptBlock {Get-Process} -Name MyJob
PS C:\> $j = Get-Job -Name MyJob
PS C:\> $j
Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
6      MyJob           BackgroundJob   Completed     True            localhost            Get-Process

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
...

Exemple 8 : Obtenir tous les travaux, y compris les travaux démarrés par une méthode différente

Cet exemple montre que l’applet Get-Job de commande peut obtenir tous les travaux démarrés dans la session active, même s’ils ont été démarrés à l’aide de méthodes différentes.

La première commande utilise l’applet Start-Job de commande pour démarrer un travail sur l’ordinateur local. La deuxième commande utilise le paramètre AsJob de l’applet Invoke-Command de commande pour démarrer un travail sur l’ordinateur S1. Bien que les commandes de la tâche s'exécutent sur l'ordinateur distant, l'objet de traitement est créé sur l'ordinateur local, vous utilisez donc les commandes locales pour gérer la tâche. La troisième commande utilise l’applet Invoke-Command de commande pour exécuter une Start-Job commande sur l’ordinateur S2. En utilisant cette méthode, l’objet de travail est créé sur l’ordinateur distant. Vous utilisez donc des commandes distantes pour gérer le travail. La quatrième commande utilise Get-Job pour obtenir les travaux stockés sur l’ordinateur local. La propriété PSJobTypeName des travaux, introduite dans Windows PowerShell 3.0, indique que le travail local démarré à l’aide de l’applet Start-Job de commande est un travail en arrière-plan et que le travail démarré dans une session à distance à l’aide de l’applet Invoke-Command de commande est un travail distant. La cinquième commande utilise Invoke-Command pour exécuter une Get-Job commande sur l’ordinateur S2. L’exemple de sortie montre les résultats de la Get-Job commande . Sur l'ordinateur S2, la tâche semble être une tâche locale. Le nom de l’ordinateur est localhost et le type de travail est un travail en arrière-plan. Pour plus d’informations sur l’exécution de travaux en arrière-plan sur des ordinateurs distants, consultez about_Remote_Jobs.

PS C:\> Start-Job -ScriptBlock {Get-EventLog System}
PS C:\> Invoke-Command -ComputerName S1 -ScriptBlock {Get-EventLog System} -AsJob
PS C:\> Invoke-Command -ComputerName S2 -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog System}}
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

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

Exemple 9 : Examiner un travail ayant échoué

Cette commande montre comment utiliser l’objet de travail qui Get-Job retourne pour examiner la raison de l’échec d’un travail. Elle illustre également comment obtenir les tâches enfant de chaque tâche.

La première commande utilise l’applet Start-Job de commande pour démarrer un travail sur l’ordinateur local. L’objet de travail qui Start-Job retourne indique que le travail a échoué. La valeur de la propriété State est Failed.

La deuxième commande utilise l’applet de Get-Job commande pour obtenir le travail. La commande utilise la méthode du point pour obtenir la valeur de la propriété JobStateInfo de l'objet. Il utilise un opérateur de pipeline pour envoyer l’objet dans la propriété JobStateInfo à l’applet Format-List de commande, qui met en forme toutes les propriétés de l’objet (*) dans une liste. Le résultat de la Format-List commande montre que la valeur de la propriété Reason du travail est vide.

La troisième commande examine plus. Il utilise une Get-Job commande pour obtenir le travail, puis un opérateur de pipeline pour envoyer l’objet de travail entier à l’applet Format-List de commande, qui affiche toutes les propriétés du travail dans une liste. L’affichage de toutes les propriétés dans l’objet de travail indique que le travail contient un travail enfant nommé Job2.

La quatrième commande utilise Get-Job pour obtenir l’objet de travail qui représente le travail enfant Job2. Il s'agit de la tâche dans laquelle a été exécutée la commande. Il utilise la méthode dot pour obtenir la propriété Reason de la propriété JobStateInfo . Le résultat montre que le travail a échoué en raison d’une erreur Accès refusé. Dans ce cas, l’utilisateur a oublié d’utiliser l’option Exécuter en tant qu’administrateur lors du démarrage de Windows PowerShell. Étant donné que les travaux en arrière-plan utilisent les fonctionnalités de communication à distance de Windows PowerShell, l’ordinateur doit être configuré pour la communication à distance afin d’exécuter un travail, même lorsque le travail s’exécute sur l’ordinateur local. Pour plus d’informations sur la configuration requise pour la communication à distance dans Windows PowerShell, consultez about_Remote_Requirements. Pour des conseils sur la résolution des problèmes, consultez about_Remote_Troubleshooting.

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

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

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  :

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.

Exemple 10 : Obtenir des résultats filtrés

Cet exemple indique comment utiliser le paramètre Filter pour obtenir une tâche de workflow. Le paramètre Filter, introduit dans Windows PowerShell 3.0, n'est valide que sur les types de tâche personnalisé, comme les tâches de workflow et les tâches planifiées.

La première commande utilise le workflow mot clé pour créer le workflow WFProcess. La deuxième commande utilise le paramètre AsJob du flux de travail WFProcess pour exécuter le workflow en tant que travail en arrière-plan. Elle utilise le paramètre JobName du workflow pour spécifier un nom pour la tâche et le paramètre PSPrivateMetadata du workflow pour spécifier un ID personnalisé. La troisième commande utilise le paramètre Filter de Get-Job pour obtenir le travail par ID personnalisé qui a été spécifié dans le paramètre PSPrivateMetadata .

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

Exemple 11 : Obtenir des informations sur les travaux enfants

Cet exemple montre l’effet de l’utilisation des paramètres IncludeChildJob et ChildJobState de l’applet Get-Job de commande.

La première commande obtient les tâches de la session active. La sortie inclut une tâche en arrière-plan, une tâche à distance et plusieurs instances d'une tâche planifiée. La tâche à distance, Job4, semble avoir échoué. La deuxième commande utilise le paramètre IncludeChildJob de Get-Job. La sortie ajoute les travaux enfants de tous les travaux qui ont des travaux enfants. Dans ce cas, la sortie révisée indique que seul le travail enfant Job5 de Job4 a échoué. La troisième commande utilise le paramètre ChildJobState avec la valeur Failed.La sortie inclut tous les travaux parents et uniquement les travaux enfants qui ont échoué. La cinquième commande utilise la propriété JobStateInfo des travaux et sa propriété Reason pour découvrir pourquoi Job5 a échoué.

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

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

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

PS C:\> (Get-Job -Name Job5).JobStateInfo.Reason
Connecting to remote server Server01 failed with the following error message:
Access is denied.

Pour plus d’informations, consultez la rubrique d’aide about_Remote_Troubleshooting .

Paramètres

-After

Obtient les tâches terminées après la date et l'heure spécifiées. Entrez un objet DateTime , tel que celui retourné par l’applet de Get-Date commande ou une chaîne qui peut être convertie en objet DateTime , tel que Dec 1, 2012 2:00 AM ou 11/06.

Ce paramètre fonctionne uniquement sur les types de tâches personnalisés, comme les tâches de workflow et les tâches planifiées, qui ont une propriété EndTime. Il ne fonctionne pas sur les travaux en arrière-plan standard, tels que ceux créés à l’aide de l’applet de Start-Job commande. Pour plus d'informations sur la prise en charge de ce paramètre, consultez la rubrique d'aide relative au type de tâche.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-Before

Obtient les tâches terminées avant la date et l'heure spécifiées. Entrez un objet DateTime .

Ce paramètre fonctionne uniquement sur les types de tâches personnalisés, comme les tâches de workflow et les tâches planifiées, qui ont une propriété EndTime. Il ne fonctionne pas sur les travaux en arrière-plan standard, tels que ceux créés à l’aide de l’applet de Start-Job commande. Pour plus d'informations sur la prise en charge de ce paramètre, consultez la rubrique d'aide relative au type de tâche.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-ChildJobState

Obtient uniquement les tâches enfant dans l'état spécifié. Les valeurs valides pour ce paramètre sont :

  • NotStarted
  • Exécution en cours
  • Completed
  • Échec
  • Arrêté
  • Bloqué
  • Interrompu
  • Déconnecté
  • Suspension
  • En cours d’arrêt

Par défaut, Get-Job n’obtient pas de travaux enfants. En utilisant le paramètre IncludeChildJob , Get-Job obtient tous les travaux enfants. Si vous utilisez le paramètre ChildJobState, le paramètre IncludeChildJob n'a aucun effet.

Ce paramètre a été introduit dans 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

Spécifie un tableau de commandes sous forme de chaînes. Cette applet de commande obtient les travaux qui incluent les commandes spécifiées. Par défaut, il s'agit de toutes les tâches. Vous pouvez utiliser des caractères génériques pour spécifier un modèle de commande.

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

-Filter

Spécifie une table de hachage des conditions. Cette applet de commande obtient des travaux qui répondent à toutes les conditions. Entrez une table de hachage où les clés sont les propriétés des travaux et les valeurs celles des propriétés des travaux.

Ce paramètre fonctionne uniquement sur les types de tâches personnalisées, tels que les tâches de workflow et les tâches planifiées. Il ne fonctionne pas sur les travaux en arrière-plan standard, tels que ceux créés à l’aide de l’applet de Start-Job commande. Pour plus d'informations sur la prise en charge de ce paramètre, consultez la rubrique d'aide relative au type de tâche.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-HasMoreData

Indique si cette applet de commande obtient uniquement les travaux qui ont la valeur de propriété HasMoreData spécifiée. La propriété HasMoreData indique si tous les résultats de la tâche ont été reçus dans la session active. Pour obtenir des travaux qui ont plus de résultats, spécifiez la valeur .$True Pour obtenir des travaux qui n’ont pas plus de résultats, spécifiez la valeur .$False

Pour obtenir les résultats d’un travail, utilisez l’applet de Receive-Job commande .

Lorsque vous utilisez l’applet Receive-Job de commande, elle supprime de son stockage en mémoire, spécifique à la session, les résultats qu’elle a retournés. Lorsqu’il a retourné tous les résultats du travail dans la session active, il définit la valeur de la propriété HasMoreData du travail sur $False) pour indiquer qu’elle n’a plus de résultats pour le travail dans la session active. Utilisez le paramètre Keep de pour empêcher Receive-Job la suppression des Receive-Job résultats et la modification de la valeur de la propriété HasMoreData. Pour plus d'informations, voir Get-Help Receive-Job.

La propriété HasMoreData est propre à la session active. Si les résultats d’un type de travail personnalisé sont enregistrés en dehors de la session, comme le type de travail planifié, qui enregistre les résultats du travail sur le disque, vous pouvez utiliser l’applet Receive-Job de commande dans une autre session pour obtenir à nouveau les résultats du travail, même si la valeur de HasMoreData est $False. Pour plus d'informations, consultez les rubriques d'aide du type de tâche personnalisé.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-Id

Spécifie un tableau d’ID de travaux que cette applet de commande obtient.

L’ID est un entier qui identifie de manière unique le travail dans la session active. Il est plus facile de mémoriser et de taper que l’ID de instance, mais il n’est unique que dans la session active. Vous pouvez taper un ou plusieurs ID séparés par des virgules. Pour rechercher l’ID d’un travail, tapez Get-Job sans paramètres.

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

-IncludeChildJob

Indique que cette applet de commande retourne des travaux enfants, en plus des travaux parents.

Ce paramètre est particulièrement utile pour examiner les travaux de flux de travail, pour lesquels Get-Job retourne un travail parent de conteneur et les échecs de travail, car la raison de l’échec est enregistrée dans une propriété du travail enfant.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-InstanceId

Spécifie un tableau de instance ID de travaux que cette applet de commande obtient. Par défaut, il s'agit de toutes les tâches.

Un ID d'instance est un GUID qui identifie de façon unique la tâche sur l'ordinateur. Pour rechercher l’ID instance d’un travail, utilisez Get-Job.

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

-Name

Spécifie un tableau de instance noms conviviaux des travaux que cette applet de commande obtient. Entrez un nom de tâche ou utilisez des caractères génériques pour entrer un modèle de nom de tâche. Par défaut, Get-Job obtient tous les travaux de la session active.

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

-Newest

Spécifie un certain nombre de travaux à obtenir. Cette applet de commande obtient les travaux qui se sont terminés récemment.

Le paramètre Newest ne trie pas ni ne retourne les tâches les plus récentes selon l'heure de fin. Pour trier la sortie, utilisez l’applet de Sort-Object commande .

Ce paramètre a été introduit dans Windows PowerShell 3.0.

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

-State

Spécifie un état de travail. Cette applet de commande obtient uniquement les travaux dans l’état spécifié. Les valeurs valides pour ce paramètre sont :

  • NotStarted
  • Exécution en cours
  • Completed
  • Échec
  • Arrêté
  • Bloqué
  • Interrompu
  • Déconnecté
  • Suspension
  • En cours d’arrêt

Par défaut, Get-Job obtient tous les travaux de la session active.

Pour plus d’informations sur les états du travail, consultez Énumération JobState.

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

Entrées

None

Vous ne pouvez pas diriger d'entrée vers cette applet de commande.

Sorties

System.Management.Automation.RemotingJob

Cette applet de commande retourne des objets qui représentent les travaux de la session.

Notes

La propriété PSJobTypeName des tâches indique le type de la tâche. La valeur de propriété est déterminée par l'auteur du type de tâche. La liste suivante affiche les types de tâches courants.

  • BackgroundJob. Le travail local a démarré à l’aide de Start-Job.
  • RemoteJob. Le travail a démarré dans une session PSSession à l’aide du paramètre AsJob de l’applet Invoke-Command de commande.
  • PSWorkflowJob. tâche démarrée à l'aide du paramètre AsJob commun des workflows.