Compartilhar 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 obtém as opções de trabalho de trabalhos agendados. Você pode usar esse comando para examinar as opções de trabalho ou para direcionar 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 de ScheduledJob, como aqueles 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.

Esse 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

Esse 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

Esse 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 encontrar um 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 objeto JobOptions 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 obtém em um novo trabalho agendado.

O primeiro comando usa Get-ScheduledJobOptions para obter as opções de trabalhos do trabalho agendado do 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 de opções 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" }

Esse comando usa o cmdlet Invoke-Command para obter as opções de trabalho agendadas 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
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-InputObject

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

Tipo:ScheduledJobDefinition
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Name

Especifica os nomes dos trabalhos agendados. Get-ScheduledJobOption obtém as opções de trabalho do trabalho agendado especificado. Há suporte para curingas.

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

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

Entradas

ScheduledJobDefinition

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

Saídas

ScheduledJobOptions