Поделиться через


Get-Job

Возвращает фоновые задания PowerShell, выполняемые в текущем сеансе.

Синтаксис

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

Описание

Командлет Get-Job получает объекты, представляющие фоновые задания, запущенные в текущем сеансе. Вы можете использовать Get-Job для получения заданий, которые были запущены с помощью командлета Start-Job или с помощью параметра AsJob любого командлета.

Без параметров команда Get-Job получает все задания в текущем сеансе. Параметры Get-Job можно использовать для получения определенных заданий.

Объект задания, который Get-Job возвращает, содержит полезные сведения о задании, но не содержит результаты задания. Чтобы получить результаты, используйте командлет Receive-Job.

Фоновое задание Windows PowerShell — это команда, которая выполняется в фоновом режиме без взаимодействия с текущим сеансом. Как правило, для выполнения сложной команды, которая занимает много времени, используется фоновое задание. Дополнительные сведения о фоновых заданиях в Windows PowerShell см. в about_Jobs.

Начиная с Windows PowerShell 3.0 командлет Get-Job также получает пользовательские типы заданий, такие как задания рабочего процесса и экземпляры запланированных заданий. Чтобы найти тип задания, используйте свойство PSJobTypeName задания.

Чтобы включить Get-Job для получения пользовательского типа задания, импортируйте модуль, поддерживающий настраиваемый тип задания, в сеанс перед выполнением команды Get-Job либо с помощью командлета Import-Module, либо с помощью командлета или получения командлета в модуле. Сведения о конкретном пользовательском типе задания см. в документации по функции пользовательского типа задания.

Примеры

Пример 1. Получение всех фоновых заданий, запущенных в текущем сеансе

Эта команда получает все фоновые задания, запущенные в текущем сеансе. Он не включает задания, созданные в других сеансах, даже если задания выполняются на локальном компьютере.

Get-Job

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

Пример 2. Остановка задания с помощью идентификатора экземпляра

Эти команды показывают, как получить идентификатор экземпляра задания, а затем использовать его для остановки задания. В отличие от имени задания, который не является уникальным, идентификатор экземпляра является уникальным.

Первая команда использует командлет Get-Job для получения задания. Он использует параметр Name для идентификации задания. Команда сохраняет объект задания, который Get-Job возвращается в переменной $j. В этом примере существует только одно задание с указанным именем. Вторая команда получает свойство InstanceId объекта в переменной $j и сохраняет его в переменной $ID. Третья команда отображает значение переменной $ID. Четвертая команда использует командлет Stop-Job для остановки задания. Он использует параметр InstanceId для идентификации задания и $ID переменной для представления идентификатора экземпляра задания.

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

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

Stop-Job -InstanceId $ID

Пример 3. Получение заданий, включающих определенную команду

Эта команда получает задания в системе, включающие команду Get-Process. Команда использует параметр командыGet-Job, чтобы ограничить полученные задания. Команда использует подстановочные знаки (*) для получения заданий, включающих команду Get-Process в любой точке командной строки.

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

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

Пример 4. Получение заданий, включающих определенную команду с помощью конвейера

Как и команда в предыдущем примере, эта команда получает задания в системе, включающую команду Get-Process. Команда использует оператор конвейера (|) для отправки PSCustomObject с помощью команды NoteProper tyв командлет Get-Job. Это эквивалент предыдущей команды.

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

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

Пример 5. Получение заданий, которые не были запущены

Эта команда получает только те задания, которые были созданы, но еще не запущены. К ним относятся задания, которые планируется запустить в будущем, и те, которые еще не запланированы.

Get-Job -State NotStarted

Пример 6. Получение заданий, которые не были назначены имени

Эта команда получает все задания с именами заданий, начинающимися с задания. Так как job<number> является именем по умолчанию для задания, эта команда получает все задания, у которых нет явно назначенного имени.

Get-Job -Name Job*

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

Пример 7. Использование объекта задания для представления задания в команде

В этом примере показано, как использовать Get-Job для получения объекта задания, а затем показано, как использовать объект задания для представления задания в команде.

Первая команда использует командлет Start-Job для запуска фонового задания, выполняющего команду Get-Process на локальном компьютере. Команда использует параметр имениStart-JobStart-Job для назначения понятного имени заданию. Вторая команда использует Get-Job для получения задания. Он использует параметр NameGet-Job для идентификации задания. Команда сохраняет полученный объект задания в переменной $j. Третья команда отображает значение объекта задания в переменной $j. Значение свойства состояния показывает, что задание завершено. Значение свойства HasMoreData показывает, что из задания доступны результаты, которые еще не извлечены. Четвертая команда использует командлет Receive-Job для получения результатов задания. Он использует объект задания в переменной $j для представления задания. Можно также использовать оператор конвейера для отправки объекта задания в 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
...

Пример 8. Получение всех заданий, включая задания, запущенные другим методом

В этом примере показано, что командлет Get-Job может получить все задания, запущенные в текущем сеансе, даже если они были запущены с помощью различных методов.

Первая команда использует командлет Start-Job для запуска задания на локальном компьютере. Вторая команда использует параметр AsJob командлета Invoke-Command для запуска задания на компьютере S1. Несмотря на то, что команды в задании выполняются на удаленном компьютере, объект задания создается на локальном компьютере, поэтому для управления заданием используются локальные команды. Третья команда использует командлет Invoke-Command для выполнения команды Start-Job на компьютере S2. С помощью этого метода объект задания создается на удаленном компьютере, поэтому для управления заданием используются удаленные команды. Четвертая команда использует Get-Job для получения заданий, хранящихся на локальном компьютере. Свойство PSJobTypeName, представленное в Windows PowerShell 3.0, показывает, что локальное задание, запущенное с помощью командлета Start-Job, является фоновым заданием, а задание, запущенное в удаленном сеансе с помощью командлета Invoke-Command, является удаленным заданием. Пятая, шестая и седьмая команда использует командлет New-PSSession для создания psSession, подключенного к компьютеру S2, он использует Invoke-Command для запуска задания на удаленном компьютере с помощью PSSession и параметра сеанса. Затем он получает задание с помощью команды Get-Job на компьютере S2 с помощью PSSession. В примере выходных данных показаны результаты команды Get-Job. На компьютере S2 задание, как представляется, является локальным заданием. Имя компьютера — localhost, а тип задания — фоновое задание. Дополнительные сведения о выполнении фоновых заданий на удаленных компьютерах см. в 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

Пример 9. Исследование неудачного задания

Эта команда показывает, как использовать объект задания, который Get-Job возвращается для изучения причины сбоя задания. В нем также показано, как получить дочерние задания каждого задания.

Первая команда использует командлет Start-Job для запуска задания на локальном компьютере. Объект задания, который Start-Job возвращает, показывает, что задание завершилось сбоем. Значение свойства состояния не выполнено.

Вторая команда использует командлет Get-Job для получения задания. Команда использует метод dot для получения значения свойства JobStateInfo объекта. Он использует оператор конвейера для отправки объекта в свойстве JobStateInfo в командлет Format-List, который форматирует все свойства объекта (*) в списке. Результат команды Format-List показывает, что значение свойства Reason задания пусто.

Третья команда изучает больше. Он использует команду Get-Job для получения задания, а затем использует оператор конвейера для отправки всего объекта задания в командлет Format-List, который отображает все свойства задания в списке. Отображение всех свойств в объекте задания показывает, что задание содержит дочернее задание с именем Job2.

Четвертая команда использует Get-Job для получения объекта задания, представляющего дочернее задание Job2. Это задание, в котором фактически выполнялась команда. Он использует метод dot для получения свойства Reason свойства JobStateInfo. В результате показано, что задание завершилось сбоем из-за ошибки "Отказано в доступе". В этом случае пользователь забыл использовать параметр "Запуск от имени администратора" при запуске Windows PowerShell.Так как фоновые задания используют функции удаленного взаимодействия Windows PowerShell, компьютер должен быть настроен для удаленного взаимодействия для запуска задания, даже если задание выполняется на локальном компьютере. Сведения о требованиях к удаленному взаимодействию в Windows PowerShell см. в about_Remote_Requirements. Советы по устранению неполадок см. в 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.

Пример 10. Получение отфильтрованных результатов

В этом примере показано, как использовать параметр фильтра для получения задания рабочего процесса. Параметр фильтра, представленный в Windows PowerShell 3.0, действителен только для пользовательских типов заданий, таких как задания рабочего процесса и запланированные задания.

Первая команда использует ключевое слово рабочего процесса для создания рабочего процесса WFProcess. Вторая команда использует параметр AsJob рабочего процесса WFProcess для запуска рабочего процесса в качестве фонового задания. Он использует параметр JobName рабочего процесса для указания имени задания, а параметр PSPrivateMetadata рабочего процесса для указания пользовательского идентификатора. Третья команда использует параметр filterGet-Job для получения задания по пользовательскому идентификатору, указанному в параметре 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

Пример 11. Получение сведений о дочерних заданиях

В этом примере показано, как использовать параметры IncludeChildJob и ChildJobState командлета Get-Job.

Первая команда получает задания в текущем сеансе. Выходные данные включают фоновое задание, удаленное задание и несколько экземпляров запланированного задания. Удаленное задание, задание4, как представляется, завершилось сбоем. Вторая команда использует параметр IncludeChildJobGet-Job. Выходные данные добавляют дочерние задания всех заданий, имеющих дочерние задания. В этом случае измененные выходные данные показывают, что не удалось выполнить только дочернее задание Job5 job4. Третья команда использует параметр ChildJobState со значением Failed.Выходные данные включают все родительские задания и только дочерние задания, которые не удалось выполнить. Пятая команда использует свойство JobStateInfo заданий и его свойство Reason для обнаружения причины сбоя Job5.

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.

Дополнительные сведения см. в разделе справки about_Remote_Troubleshooting.

Параметры

-After

Получает завершенные задания, завершившиеся после указанной даты и времени. Введите объект DateTime, например один, возвращенный командлетом Get-Date или строкой, которую можно преобразовать в объект DateTime, например Dec 1, 2012 2:00 AM или 11/06.

Этот параметр работает только для пользовательских типов заданий, таких как задания рабочего процесса и запланированные задания, имеющие свойство EndTime. Он не работает на стандартных фоновых заданиях, таких как созданные с помощью командлета Start-Job. Сведения о поддержке этого параметра см. в разделе справки для типа задания.

Этот параметр появился в Windows PowerShell 3.0.

Тип:DateTime
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Before

Получает завершенные задания, завершившиеся до указанной даты и времени. Введите объект DateTime.

Этот параметр работает только для пользовательских типов заданий, таких как задания рабочего процесса и запланированные задания, имеющие свойство EndTime. Он не работает на стандартных фоновых заданиях, таких как созданные с помощью командлета Start-Job. Сведения о поддержке этого параметра см. в разделе справки для типа задания.

Этот параметр появился в Windows PowerShell 3.0.

Тип:DateTime
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ChildJobState

Возвращает только дочерние задания, имеющие указанное состояние. Допустимые значения для этого параметра:

  • NotStarted
  • Бег
  • Завершённый
  • Неудавшийся
  • Остановленный
  • Блокированный
  • Подвешенный
  • Бессвязный
  • Приостановка
  • Зубная пломба

По умолчанию Get-Job не получает дочерние задания. Используя параметр IncludeChildJob, Get-Job получает все дочерние задания. Если используется параметр ChildJobState, параметр IncludeChildJob не действует.

Этот параметр появился в Windows PowerShell 3.0.

Тип:JobState
Допустимые значения:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Command

Задает массив команд в виде строк. Этот командлет получает задания, содержащие указанные команды. Значение по умолчанию — все задания. Для указания шаблона команды можно использовать подстановочные знаки.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:True

-Filter

Задает хэш-таблицу условий. Этот командлет получает задания, удовлетворяющие всем условиям. Введите хэш-таблицу, в которой ключи являются свойствами задания и значениями свойств задания.

Этот параметр работает только в пользовательских типах заданий, таких как задания рабочего процесса и запланированные задания. Он не работает на стандартных фоновых заданиях, таких как созданные с помощью командлета Start-Job. Сведения о поддержке этого параметра см. в разделе справки для типа задания.

Этот параметр появился в Windows PowerShell 3.0.

Тип:Hashtable
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-HasMoreData

Указывает, получает ли этот командлет только задания, имеющие указанное значение свойства HasMoreData. Свойство HasMoreData указывает, получены ли все результаты задания в текущем сеансе. Чтобы получить задания с большим количеством результатов, укажите значение $True. Чтобы получить задания, не имеющие дополнительных результатов, укажите значение $False.

Чтобы получить результаты задания, используйте командлет Receive-Job.

При использовании командлета Receive-Job он удаляет из памяти хранилище для конкретного сеанса, возвращаемые им результаты. Когда он вернул все результаты задания в текущем сеансе, он задает значение свойства HasMoreData задания на $False), чтобы указать, что в текущем сеансе нет результатов. Используйте параметр KeepReceive-Job, чтобы предотвратить удаление результатов Receive-Job и изменение значения свойства HasMoreData. Дополнительные сведения см. в Get-Help Receive-Job.

Свойство HasMoreData зависит от текущего сеанса. Если результаты настраиваемого типа задания сохраняются вне сеанса, например запланированный тип задания, который сохраняет результаты задания на диске, можно использовать командлет Receive-Job в другом сеансе, чтобы снова получить результаты задания, даже если значение HasMoreData$False. Дополнительные сведения см. в разделах справки для пользовательского типа задания.

Этот параметр появился в Windows PowerShell 3.0.

Тип:Boolean
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Id

Задает массив идентификаторов заданий, которые получает этот командлет.

Идентификатор — это целое число, которое однозначно идентифицирует задание в текущем сеансе. Проще помнить и вводить идентификатор экземпляра, но он является уникальным только в текущем сеансе. Можно ввести один или несколько идентификаторов, разделенных запятыми. Чтобы найти идентификатор задания, введите Get-Job без параметров.

Тип:Int32[]
Position:0
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-IncludeChildJob

Указывает, что этот командлет возвращает дочерние задания в дополнение к родительским заданиям.

Этот параметр особенно полезен для изучения заданий рабочих процессов, для которых Get-Job возвращает родительское задание контейнера и сбои заданий, так как причина сбоя сохраняется в свойстве дочернего задания.

Этот параметр появился в Windows PowerShell 3.0.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InstanceId

Задает массив идентификаторов экземпляров заданий, которые получает этот командлет. Значение по умолчанию — все задания.

Идентификатор экземпляра — это GUID, который однозначно идентифицирует задание на компьютере. Чтобы найти идентификатор экземпляра задания, используйте Get-Job.

Тип:Guid[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Name

Задает массив понятных имен экземпляров заданий, которые получает этот командлет. Введите имя задания или используйте подстановочные знаки для ввода шаблона имени задания. По умолчанию Get-Job получает все задания в текущем сеансе.

Тип:String[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:True

-Newest

Указывает ряд заданий для получения. Этот командлет получает задания, завершившиеся последними.

Параметр newest не сортирует или не возвращает последние задания в порядке окончания времени. Чтобы отсортировать выходные данные, используйте командлет Sort-Object.

Этот параметр появился в Windows PowerShell 3.0.

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-State

Указывает состояние задания. Этот командлет получает только задания в указанном состоянии. Допустимые значения для этого параметра:

  • NotStarted
  • Бег
  • Завершённый
  • Неудавшийся
  • Остановленный
  • Блокированный
  • Подвешенный
  • Бессвязный
  • Приостановка
  • Зубная пломба

По умолчанию Get-Job получает все задания в текущем сеансе.

Дополнительные сведения о состояниях заданий см. в перечисления JobState.

Тип:JobState
Допустимые значения:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

System.Management.Automation.RemotingJob

Этот командлет возвращает объекты, представляющие задания в сеансе.

Примечания

PowerShell включает следующие псевдонимы для Get-Job:

  • Все платформы:
    • gjb

Свойство psJobTypeName указывает тип задания. Значение свойства определяется автором типа задания. В следующем списке показаны распространенные типы заданий.

  • BackgroundJob. Локальное задание началось с помощью Start-Job.
  • RemoteJob. Задание началось в PSSession с помощью параметра AsJob командлета Invoke-Command.
  • PSWorkflowJob. Задание, запущенное с помощью AsJob общий параметр рабочих процессов.