Partilhar via


Get-ScheduledJobOption

Obtém as opções de trabalho de trabalhos agendados.

Sintaxe

Get-ScheduledJobOption
   [-InputObject] <ScheduledJobDefinition>
   [<CommonParameters>]
Get-ScheduledJobOption
   [-Id] <Int32>
   [<CommonParameters>]
Get-ScheduledJobOption
   [-Name] <String>
   [<CommonParameters>]

Description

O cmdlet Get-ScheduledJobOption do obtém as opções de trabalho de trabalhos agendados. Você pode usar esse comando para examinar as opções de trabalho ou canalizar as opções de trabalho para outros cmdlets.

As opções de trabalho não são salvas no disco de forma independente; eles fazem parte de um trabalho agendado. Para obter as opções de trabalho de um trabalho agendado, especifique o trabalho agendado.

Use os parâmetros do cmdlet Get-ScheduledJobOption para identificar o trabalho agendado. Você pode identificar trabalhos agendados por seus nomes ou números de identificação, ou inserindo ou canalizando objetos ScheduledJob, como aqueles que são retornados pelo cmdlet Get-ScheduledJob, para Get-ScheduledJobOption.

Get-ScheduledJobOption é um de uma coleção de cmdlets de agendamento de trabalho no módulo PSScheduledJob incluído no Windows PowerShell.

Para obter mais informações sobre trabalhos agendados, consulte os tópicos Sobre no módulo PSScheduledJob. Importe o módulo PSScheduledJob e digite: Get-Help about_Scheduled* ou veja about_Scheduled_Jobs.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Obter opções de trabalho

PS C:\> Get-ScheduledJobOption -Name "*Backup*"
StartIfOnBatteries     : False

StopIfGoingOnBatteries : True

WakeToRun              : False

StartIfNotIdle         : True

StopIfGoingOffIdle     : False

RestartOnIdleResume    : False

IdleDuration           : 00:10:00

IdleTimeout            : 01:00:00

ShowInTaskScheduler    : True

RunElevated            : True

RunWithoutNetwork      : True

DoNotAllowDemandStart  : False

MultipleInstancePolicy : Ignore

NewJobDefinition       : Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Este comando obtém as opções de trabalho de trabalhos agendados que têm BackUp em seus nomes. Os resultados mostram o objeto de opções de trabalho que Get-ScheduledJobOption retornado.

Exemplo 2: Obter todas as opções de trabalho

PS C:\> Get-ScheduledJob | Get-ScheduledJobOptions

Este comando obtém as opções de trabalho de todos os trabalhos agendados no computador local.

Ele usa o cmdlet Get-ScheduledJob para obter os trabalhos agendados no computador local. Um operador de pipeline (|) envia os trabalhos agendados para o cmdlet Get-ScheduledJobOptions, que obtém as opções de trabalho de cada trabalho agendado.

Exemplo 3: Obter opções de trabalho selecionadas

PS C:\> Get-ScheduledJob | Get-ScheduledJobOption | Where {$_.RunElevated -and !$_.WaketoRun}
StartIfOnBatteries     : False

StopIfGoingOnBatteries : True

WakeToRun              : True

StartIfNotIdle         : True

StopIfGoingOffIdle     : False

RestartOnIdleResume    : False

IdleDuration           : 00:10:00

IdleTimeout            : 01:00:00

ShowInTaskScheduler    : True

RunElevated            : True

RunWithoutNetwork      : True

DoNotAllowDemandStart  : False

MultipleInstancePolicy : Ignore

NewJobDefinition       : Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

The second command shows how to find to which scheduled job the job options belong. This command uses a pipeline operator (|) to send the selected job options to the ForEach-Object cmdlet, which gets the JobDefinition property of each options object. The JobDefinition property contains the originating job object. The results show that the selected options came from the DeployPkg scheduled job.
PS C:\> Get-ScheduledJob | Get-ScheduledJobOption | Where {$_.RunElevated -and !$_.WaketoRun} | ForEach-Object {$_.JobDefinition}
Id         Name            Triggers        Command                                  Enabled

--         ----            --------        -------                                  -------

2          DeployPkg         {1, 2}        DeployPackage.ps1                        True

Este exemplo mostra como localizar o objeto de opções de trabalho com valores específicos.

O primeiro comando obtém opções de trabalho nas quais a propriedade RunElevated tem um valor de $True e a propriedade RunWithoutNetwork tem um valor de $False. A saída mostra o JobOptions objeto que foi selecionado.

Exemplo 4: Usar opções de trabalho para criar um novo trabalho

PS C:\> $Opts = Get-ScheduledJobOption -Name "BackupTestLogs"
PS C:\> Register-ScheduledJob -Name "Archive-Scripts" -FilePath "\\Srv01\Scripts\ArchiveScripts.ps1" -ScheduledJobOption $Opts

Este exemplo mostra como usar as opções de trabalho que Get-ScheduledJobOptions recebe em um novo trabalho agendado.

O primeiro comando usa Get-ScheduledJobOptions para obter as opções de trabalhos do trabalho agendado BackupTestLogs. O comando salva as opções na variável $Opts.

O segundo comando usa Register-ScheduledJob cmdlet para criar um novo trabalho agendado. O valor do parâmetro ScheduledJobOption é o objeto options na variável $Opts.

Exemplo 5: Obter opções de trabalho de um computador remoto

PS C:\> $O = Invoke-Command -ComputerName "Srv01" -ScriptBlock {Get-ScheduledJob -Name "DataDemon" }

Este comando usa o cmdlet Invoke-Command para obter as opções de trabalho agendado do trabalho DataDemon no computador Srv01. O comando salva as opções na variável $O.

Parâmetros

-Id

Especifica o número de identificação de um trabalho agendado. Get-ScheduledJobOption obtém as opções de trabalho do trabalho agendado especificado.

Para obter os números de identificação de trabalhos agendados no computador local ou em um computador remoto, use o cmdlet Get-ScheduledJob.

Tipo:Int32
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-InputObject

Especifica um trabalho agendado. Insira uma variável que contenha um objeto ScheduledJob ou digite um comando ou expressão que obtenha um objeto ScheduledJob, como um comando Get-ScheduledJob. Você também pode canalizar um objeto ScheduledJob para Get-ScheduledJobOption.

Tipo:ScheduledJobDefinition
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Name

Especifica os nomes dos trabalhos agendados. Get-ScheduledJobOption obtém as opções de trabalho do trabalho agendado especificado. Curingas são suportados.

Para obter os nomes de trabalhos agendados no computador local ou em um computador remoto, use o cmdlet Get-ScheduledJob.

Tipo:String
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

Entradas

ScheduledJobDefinition

Você pode canalizar um trabalho agendado de Get-ScheduledJob para Get-ScheduledJobOption.

Saídas

ScheduledJobOptions