共用方式為


Get-ScheduledJobOption

取得排程作業的作業選項。

語法

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

Description

Get-ScheduledJobOption Cmdlet 會取得排程作業的作業選項。 您可以使用此命令來檢查作業選項,或使用管線將作業選項傳送至其他 Cmdlet。

作業選項不會獨立儲存至磁碟;它們是排程工作的一部分。 若要取得排程作業的作業選項,請指定排程的工作。

使用 Get-ScheduledJobOption Cmdlet 的參數來識別排程的工作。 您可以透過其名稱或識別碼來識別排程工作,或輸入或管線 ScheduledJob 物件,例如 Get-ScheduledJob Cmdlet 所傳回的物件,以 Get-ScheduledJobOption

Get-ScheduledJobOption 是 Windows PowerShell 中 PSScheduledJob 模組中作業排程 Cmdlet 的其中一個集合。

如需排程工作的詳細資訊,請參閱 PSScheduledJob 模組中的 About 主題。 匯入 PSScheduledJob 模組,然後輸入:Get-Help about_Scheduled* 或查看about_Scheduled_Jobs。

此 Cmdlet 已在 Windows PowerShell 3.0 中引進。

範例

範例 1:取得作業選項

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

此命令會取得排程作業的作業選項,其名稱中有BackUp。 結果會顯示傳回 Get-ScheduledJobOption 作業選項物件。

範例 2:取得所有作業選項

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

此命令會取得本機計算機上所有排程工作的工作選項。

它會使用 Get-ScheduledJob Cmdlet 取得本機電腦上的排程工作。 管線運算符 (|) 會將排程的工作傳送至 Get-ScheduledJobOptions Cmdlet,此 Cmdlet 會取得每個排程作業的作業選項。

範例 3:取得選取的作業選項

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

此範例示範如何尋找具有特定值的作業選項物件。

第一個命令會取得 RunElevated 屬性具有 $True 值且 RunWithoutNetwork 屬性具有 $False 值的工作選項。 輸出會顯示已選取 JobOptions 物件。

範例 4:使用作業選項建立新作業

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

這個範例示範如何使用 Get-ScheduledJobOptions 在新排程作業中取得的工作選項。

第一個命令會使用 Get-ScheduledJobOptions 來取得BackupTestLogs 排程作業的作業選項。 命令會將選項儲存在 $Opts 變數中。

第二個命令會使用 Register-ScheduledJob Cmdlet 來建立新的排程工作。 ScheduledJobOption 參數的值是 $Opts 變數中的 options 物件。

範例 5:從遠端電腦取得作業選項

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

此命令會使用 Invoke-Command Cmdlet 取得 Srv01 計算機上 DataDemon 作業的排程作業選項。 命令會將選項儲存在 $O 變數中。

參數

-Id

指定排程工作的識別碼。 Get-ScheduledJobOption 取得指定排程工作的作業選項。

若要取得本機電腦或遠端電腦上的排程工作識別碼,請使用 Get-ScheduledJob Cmdlet。

類型:Int32
Position:0
預設值:None
必要:True
接受管線輸入:False
接受萬用字元:False

-InputObject

指定排程的工作。 輸入包含 ScheduledJob 物件的變數,或輸入命令或表達式,以取得 ScheduledJob 物件,例如 Get-ScheduledJob 命令。 您也可以使用管線將 ScheduledJob 物件 傳送至 get-ScheduledJobOption

類型:ScheduledJobDefinition
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Name

指定排程工作的名稱。 Get-ScheduledJobOption 取得指定排程工作的作業選項。 支援通配符。

若要取得本機電腦或遠端電腦上的排程工作名稱,請使用 Get-ScheduledJob Cmdlet。

類型:String
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

輸入

ScheduledJobDefinition

您可以使用管線將排程工作從 Get-ScheduledJob 傳送至 get-ScheduledJobOption

輸出

ScheduledJobOptions