New-ScheduledJobOption
Vytvoří objekt, který obsahuje rozšířené možnosti pro naplánovanou úlohu.
Syntaxe
New-ScheduledJobOption
[-RunElevated]
[-HideInTaskScheduler]
[-RestartOnIdleResume]
[-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
[-DoNotAllowDemandStart]
[-RequireNetwork]
[-StopIfGoingOffIdle]
[-WakeToRun]
[-ContinueIfGoingOnBattery]
[-StartIfOnBattery]
[-IdleTimeout <TimeSpan>]
[-IdleDuration <TimeSpan>]
[-StartIfIdle]
[<CommonParameters>]
Description
Rutina New-ScheduledJobOption vytvoří objekt, který obsahuje pokročilé možnosti pro naplánovanou úlohu.
Pomocí objektu ScheduledJobOptions, který New-ScheduledJobOption vrátí možnosti úlohy pro novou nebo existující naplánovanou úlohu. Alternativně můžete nastavit možnosti úlohy pomocí rutiny Get-ScheduledJobOption k získání možností úlohy existující naplánované úlohy nebo pomocí hodnoty tabulky hash, která představuje možnosti úlohy.
Bez parametrů New-ScheduledJobOption vygeneruje objekt, který obsahuje výchozí hodnoty pro všechny možnosti. Vzhledem k tomu, že lze upravit všechny vlastnosti s výjimkou JobDefinition, můžete výsledný objekt použít jako šablonu a vytvořit standardní objekty možností pro vaši firmu.
Při vytváření plánovaných úloh a nastavení možností naplánované úlohy zkontrolujte výchozí hodnoty všech možností naplánované úlohy. Naplánované úlohy se spouštějí jenom v případě, že jsou splněny všechny podmínky nastavené pro jejich spuštění.
New-ScheduledJobOption je jednou z kolekcí rutin plánování úloh v modulu PSScheduledJob, který je součástí Prostředí Windows PowerShell.
Další informace o naplánovaných úlohách naleznete v tématu o tématech v modulu PSScheduledJob.
Importujte modul PSScheduledJob a zadejte: Get-Help about_Scheduled*
nebo viz about_Scheduled_Jobs.
Tato rutina byla zavedena ve Windows PowerShellu 3.0.
Příklady
Příklad 1: Vytvoření objektu možnosti naplánované úlohy s výchozími hodnotami
PS C:\> New-ScheduledJobOption
StartIfOnBatteries : False
StopIfGoingOnBatteries : True
WakeToRun : False
StartIfNotIdle : True
StopIfGoingOffIdle : False
RestartOnIdleResume : False
IdleDuration : 00:10:00
IdleTimeout : 01:00:00
ShowInTaskScheduler : True
RunElevated : False
RunWithoutNetwork : True
DoNotAllowDemandStart : False
MultipleInstancePolicy : Ignore
NewJobDefinition :
Tento příkaz vytvoří objekt možnosti naplánované úlohy, který má všechny výchozí hodnoty.
Příklad 2: Vytvoření objektu možnosti naplánované úlohy s vlastními hodnotami
PS C:\> New-ScheduledJobOption -RequireNetwork -StartIfOnBattery
StartIfOnBatteries : True
StopIfGoingOnBatteries : True
WakeToRun : False
StartIfNotIdle : True
StopIfGoingOffIdle : False
RestartOnIdleResume : False
IdleDuration : 00:10:00
IdleTimeout : 01:00:00
ShowInTaskScheduler : True
RunElevated : False
RunWithoutNetwork : False
DoNotAllowDemandStart : False
MultipleInstancePolicy : Ignore
NewJobDefinition :
Následující příkaz vytvoří objekt naplánované úlohy, který vyžaduje síť a spustí naplánovanou úlohu i v případě, že počítač není připojený k napájení střídavého proudu.
Výstup ukazuje, že parametr RequireNetwork změnil hodnotu vlastnosti RunWithoutNetwork na $False a parametr StartIfOnBattery změnil hodnotu vlastnosti StartIfOnBatteries na $True.
Příklad 3: Nastavení možností pro novou naplánovanou úlohu
The first command creates a **ScheduledJobOptions** object with the *RunElevated* parameter. It saves the object in the $RunAsAdmin variable.
PS C:\> $RunAsAdmin = New-ScheduledJobOption -RunElevated
The second command uses the Register-ScheduledJob cmdlet to create a new scheduled job. The value of the *ScheduledJobOption* parameter is the option object in the value of the $RunAsAdmin variable.
PS C:\> Register-ScheduledJob -Name Backup -FilePath D:\Scripts\Backup.ps1 -Trigger $Mondays -ScheduledJobOption $RunAsAdmin
The third command uses the Get-ScheduledJobOption cmdlet to get the job options of the Backup scheduled job.The cmdlet output shows that the RunElevated property is set to $True and the JobDefinition property of the job option object is now populated with the scheduled job object for the Backup scheduled job.
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 : IgnoreNew
JobDefinition : Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition
Tento příklad ukazuje, jak použít ScheduledJobOptions objekt, který New-ScheduledJobOption vrátí k nastavení možností pro novou naplánovanou úlohu.
Příklad 4: Seřazení vlastností objektu možnosti naplánované úlohy
PS C:\> $Options = New-ScheduledJobOption -WakeToRun
PS C:\> $Options.PSObject.Properties | Sort-Object -Property Name | Format-Table -Property Name, Value -Autosize
Name Value
---- -----
DoNotAllowDemandStart False
IdleDuration 00:10:00
IdleTimeout 01:00:00
JobDefinition
MultipleInstancePolicy IgnoreNew
RestartOnIdleResume False
RunElevated False
RunWithoutNetwork True
ShowInTaskScheduler True
StartIfNotIdle True
StartIfOnBatteries False
StopIfGoingOffIdle False
StopIfGoingOnBatteries True
WakeToRun True
Tento příklad ukazuje, jak seřadit vlastnosti ScheduledJobOptions objekt v abecedním pořadí pro snadné čtení.
První příkaz používá rutinu
K získání vlastností $Options jako objektů použije druhý příkaz vlastnost PSObject všech objektů Windows PowerShellu a jeho vlastnosti Properties. Příkaz pak do rutiny Sort-Object řadí objekty vlastnosti, které seřadí vlastnosti podle abecedy podle názvu, a pak do rutiny Format-Table, která zobrazí názvy a hodnoty vlastností v tabulce.
Tento formát usnadňuje vyhledání vlastnosti WakeToRun objektu
Parametry
-ContinueIfGoingOnBattery
Nezastavujte naplánovanou úlohu, pokud počítač během běhu úlohy přepne na napájení baterie (odpojí se od napájení střídavého proudu). Ve výchozím nastavení se naplánované úlohy zastaví, když se počítač odpojí od napájení střídavého proudu.
Parametr ContinueIfGoingOnBattery nastaví hodnotu StopIfGoingOnBatteries naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-DoNotAllowDemandStart
Spusťte úlohu pouze v případech, kdy se aktivuje. Uživatelé nemůžou úlohu spustit ručně, například pomocí funkce Spustit v Plánovači úloh.
Tento parametr má vliv pouze na plánovač úloh. Nezabrání uživatelům v použití rutiny Start-Job ke spuštění úlohy.
Parametr DoNotAllowDemandStart nastaví hodnotu Vlastnosti DoNotAllowDemandStart naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-HideInTaskScheduler
Nezobrazovat úlohu v Plánovači úloh Tato hodnota má vliv pouze na počítač, na kterém se úloha spouští. Ve výchozím nastavení se naplánované úkoly zobrazují v Plánovači úloh.
I když je úkol skrytý, můžou uživatelé úkol zobrazit výběrem možnosti Zobrazit skryté úkoly v Plánovači úloh.
Parametr HideInTaskScheduler nastaví hodnotu ShowInTaskScheduler vlastnost naplánovaných úloh na $False.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-IdleDuration
Určuje, jak dlouho musí být počítač nečinný před spuštěním úlohy. Výchozí hodnota je 10 minut. Pokud počítač není nečinný po zadanou dobu, než vyprší hodnota IdleTimeout vyprší, naplánovaná úloha se nespustí až do dalšího naplánovaného času, pokud existuje.
Zadejte objekt TimeSpan, například objekt vygenerovaný rutinou New-TimeSpan, nebo zadejte hodnotu do <hodin>:<minuty>:<sekund> formátu, který se automaticky převede na objekt TimeSpan.
Pokud chcete tuto hodnotu povolit, použijte parametr StartIfIdle. Ve výchozím nastavení je vlastnost StartIfNotIdle naplánovaných úloh nastavena na $True a Prostředí Windows PowerShell ignoruje hodnoty IdleDuration a IdleTimeout hodnoty.
Typ: | TimeSpan |
Position: | Named |
Default value: | 10 minutes (00:10:00) |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-IdleTimeout
Určuje, jak dlouho naplánovaná úloha čeká na nečinnost počítače. Pokud tento časový limit vyprší před tím, než počítač zůstane nečinný po dobu určenou parametrem IdleDuration, úloha se nespustí do dalšího naplánovaného času, pokud existuje. Výchozí hodnota je jedna hodina.
Zadejte objekt TimeSpan, například objekt vygenerovaný rutinou New-TimeSpan, nebo zadejte hodnotu do <hodin>:<minuty>:<sekund> formátu, který se automaticky převede na objekt TimeSpan.
Pokud chcete tuto hodnotu povolit, použijte parametr StartIfIdle. Ve výchozím nastavení je vlastnost StartIfNotIdle naplánovaných úloh nastavena na $True a Prostředí Windows PowerShell ignoruje hodnoty IdleDuration a IdleTimeout hodnoty.
Typ: | TimeSpan |
Position: | Named |
Default value: | 1 hour (1:00:00) |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-MultipleInstancePolicy
Určuje, jak systém reaguje na požadavek na spuštění instance naplánované úlohy, zatímco je spuštěna jiná instance úlohy. Výchozí hodnota je IgnoreNew. Přijatelné hodnoty pro tento parametr jsou:
- IgnoreNew. Nová instance úlohy se ignoruje.
- Rovnoběžný. Nová instance úlohy se spustí okamžitě.
- Fronta. Nová instance úlohy se spustí, jakmile se aktuální instance dokončí.
- Přestat existovat. Aktuální instance úlohy se zastaví a spustí se nová instance.
Pokud chcete úlohu spustit, musí být splněny všechny podmínky pro plán úlohy. Například pokud podmínky nastavené RequireNetwork, IdleDurationa IdleTimeout parametry nejsou splněny, instance úlohy není spuštěna bez ohledu na hodnotu tohoto parametru.
Typ: | TaskMultipleInstancePolicy |
Přípustné hodnoty: | None, IgnoreNew, Parallel, Queue, StopExisting |
Position: | Named |
Default value: | IgnoreNew |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-RequireNetwork
Spustí naplánovanou úlohu jenom v případech, kdy jsou k dispozici síťová připojení.
Pokud zadáte tento parametr a síť není k dispozici v naplánovaném čase spuštění, úloha se nespustí do dalšího naplánovaného času spuštění, pokud existuje.
Parametr RequireNetwork nastaví hodnotu Vlastnosti RunWithoutNetwork naplánovaných úloh na $False.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-RestartOnIdleResume
Restartuje naplánovanou úlohu, když se počítač stane nečinnou. Tento parametr funguje s parametrem StopIfGoingOffIdle, který pozastaví spuštěnou naplánovanou úlohu, pokud se počítač stane aktivní (ponechá stav nečinnosti).
Parametr RestartOnIdleResume nastaví hodnotu Vlastnosti RestartOnIdleResume naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-RunElevated
Spustí naplánovanou úlohu s oprávněními člena skupiny Administrators na počítači, na kterém je úloha spuštěna.
Pokud chcete povolit spuštění naplánované úlohy s oprávněními správce, použijte parametr přihlašovací údaje Register-ScheduledJob k poskytnutí explicitních přihlašovacích údajů pro úlohu.
Parametr RunElevated nastaví hodnotu Vlastnosti RunElevated naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-StartIfIdle
Spustí naplánovanou úlohu, pokud byl počítač nečinný po dobu určenou parametrem IdleDuration před vypršením času určeného parametrem IdleTimeout.
Ve výchozím nastavení jsou parametry IdleDuration a IdleTimeout ignorovány a úloha se spustí v naplánovaném čase spuštění, i když je počítač zaneprázdněný.
Pokud zadáte tento parametr a počítač je zaneprázdněn (nečinný) v naplánovaném čase spuštění, úloha se nespustí až do dalšího naplánovaného času spuštění, pokud existuje.
Parametr StartIfIdle nastaví hodnotu Vlastnosti StartIfNotIdle naplánovaných úloh na $False.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-StartIfOnBattery
Spustí naplánovanou úlohu i v případě, že počítač běží na bateriích v naplánovaném čase spuštění. Výchozí hodnota je $False.
Parametr StartIfOnBattery nastaví hodnotu Vlastnosti StartIfOnBatteries naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-StopIfGoingOffIdle
Pozastaví spuštěnou naplánovanou úlohu, pokud se počítač stane aktivní (nečinný), když je úloha spuštěná.
Ve výchozím nastavení se naplánovaná úloha, která je pozastavena, když se počítač stane aktivní, obnoví, když se počítač znovu stane nečinným.
Pokud chcete toto výchozí chování změnit, použijte parametr
Parametr StopIfGoingOffIdle nastaví hodnotu StopIfGoingOffIdle vlastnosti naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-WakeToRun
Probouzí počítač ze stavu hibernace nebo režimu spánku v naplánovaném čase spuštění, aby mohl úlohu spustit. Pokud je počítač ve výchozím nastavení ve stavu Hibernate nebo Sleep v naplánovaném čase spuštění, úloha se nespustí.
Parametr WakeToRun nastaví hodnotu vlastnosti WakeToRun naplánovaných úloh na $True.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
None
Vstup do této rutiny nelze převést.
Výstupy
Poznámky
Můžete použít ScheduledJobOptions objekt, který New-ScheduledJobOption vytvoří jako hodnotu parametru ScheduledJobOption rutiny Register-ScheduledJob. Parametr ScheduledJobOption však může také vzít hodnotu tabulky hash, která určuje vlastnosti ScheduledJobOptions objektu a jejich hodnoty, například:
@{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}
Související odkazy
- about_Scheduled_Jobs
- Add-JobTrigger
- Disable-JobTrigger
- Disable-ScheduledJob
- Enable-JobTrigger
- Enable-ScheduledJob
- Get-JobTrigger
- Get-ScheduledJob
- Get-ScheduledJobOption
- New-JobTrigger
- New-ScheduledJobOption
- Register-ScheduledJob
- Remove-JobTrigger
- Set-JobTrigger
- Set-ScheduledJob
- Set-ScheduledJobOption
- Unregister-ScheduledJob