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 naplánované úlohy.
Pomocí objektu ScheduledJobOptions , který New-ScheduledJobOption
se vrátí, můžete nastavit možnosti úlohy pro novou nebo existující naplánovanou úlohu. Alternativně můžete pomocí rutiny Get-ScheduledJobOption
nastavit možnosti úlohy, abyste získali možnosti úlohy existující naplánované úlohy nebo pomocí hodnoty hash tabulky, která představuje možnosti úlohy.
Bez parametrů vygeneruje objekt, New-ScheduledJobOption
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í Windows PowerShellu.
Další informace o naplánovaných úlohách naleznete v tématu o tématech v modulu PSScheduledJob. Naimportujte modul PSScheduledJob a zadejte: Get-Help about_Scheduled*
nebo se podívejte na 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
Tento příklad vytvoří objekt možnosti naplánované úlohy s výchozími hodnotami.
New-ScheduledJobOption
Příklad 2: Vytvoření objektu možnosti naplánované úlohy s vlastními hodnotami
Tento příklad vytvoří objekt možnosti naplánované úlohy s vlastními hodnotami.
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 RequireNetwork parametr změnil hodnotu RunWithoutNetwork vlastnost a $false
StartIfOnBattery parametr změnil hodnotu StartIfOnBatteries vlastnost na $true
.
Příklad 3: Nastavení možností pro novou naplánovanou úlohu
Tento příklad ukazuje, jak použít ScheduledJobOptions objekt, který New-ScheduledJobOption
se vrátí k nastavení možností pro novou naplánovanou úlohu.
$runAsAdmin = New-ScheduledJobOption -RunElevated
Register-ScheduledJob -Name Backup -FilePath D:\Scripts\Backup.ps1 -Trigger $Mondays -ScheduledJobOption $RunAsAdmin
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
První příkaz vytvoří objekt ScheduledJobOptions s parametrem RunElevated . Uloží objekt do $runAsAdmin
proměnné.
Druhý příkaz pomocí rutiny Register-ScheduledJob
vytvoří novou naplánovanou úlohu. Hodnota parametru ScheduledJobOption je objekt možnosti v hodnotě $runAsAdmin
proměnné.
Třetí příkaz pomocí rutiny Get-ScheduledJobOption
získá možnosti úlohy naplánované úlohy zálohování. Výstup rutiny ukazuje, že vlastnost RunElevated je nastavena na $true
a JobDefinition vlastnost objektu možnosti úlohy je nyní naplněna plánovaným objektem úlohy pro naplánovanou úlohu zálohování.
Příklad 4: Seřazení vlastností objektu možnosti naplánované úlohy
Tento příklad ukazuje, jak seřadit vlastnosti ScheduledJobOptions objektu v abecedním pořadí pro snadné čtení.
$options = New-ScheduledJobOption -WakeToRun
$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
První příkaz pomocí rutiny New-ScheduledJobOption
vytvoří objekt ScheduledJobOptions . Příkaz používá parametr WakeToRun a uloží výsledný objekt do $options
proměnné.
K získání vlastností $Options jako objektů používá druhý příkaz vlastnost PSObject všech objektů Windows PowerShellu a jeho Vlastnosti. Příkaz pak předá objekty vlastností do Sort-Object
rutiny, která seřadí vlastnosti podle abecedy podle názvu, a pak do Format-Table
rutiny, která zobrazí názvy a hodnoty vlastností v tabulce.
Tento formát usnadňuje nalezení WakeToRun vlastnost ScheduledJobOptions objektu $options
a ověřit, že jeho hodnota byla změněna z $false
na $true
.
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 vlastnosti naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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žívání rutiny Start-Job
ke spuštění úlohy.
DoNotAllowDemandStart parametr nastaví hodnotu DoNotAllowDemandStart vlastnost naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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: | None |
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 před vypršením platnosti hodnoty IdleTimeout , naplánovaná úloha se nespustí do dalšího naplánovaného času, pokud existuje.
Zadejte objekt TimeSpan, například objekt vygenerovaný rutinouNew-TimeSpan
, nebo zadejte hodnotu ve <formátu hours>:minutes>:<<seconds>, který se automaticky převede na objekt TimeSpan.
Chcete-li tuto hodnotu povolit, použijte parametr StartIfIdle . Ve výchozím nastavení je vlastnost StartIfNotIdle naplánovaných úloh nastavena na $true
a Windows PowerShell ignoruje hodnoty IdleDuration a IdleTimeout .
Typ: | TimeSpan |
Position: | Named |
Default value: | None |
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ý pro časové období určené 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ý rutinouNew-TimeSpan
, nebo zadejte hodnotu ve <formátu hours>:minutes>:<<seconds>, který se automaticky převede na objekt TimeSpan.
Chcete-li tuto hodnotu povolit, použijte parametr StartIfIdle . Ve výchozím nastavení je vlastnost StartIfNotIdle naplánovaných úloh nastavena na $true
a Windows PowerShell ignoruje hodnoty IdleDuration a IdleTimeout .
Typ: | TimeSpan |
Position: | Named |
Default value: | None |
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
. Tento parametr přijímá tyto hodnoty:
IgnoreNew
– Nová instance úlohy se ignoruje.Parallel
– Nová instance úlohy se spustí okamžitě.Queue
– Nová instance úlohy se spustí, jakmile se aktuální instance dokončí.StopExisting
– 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. Pokud například nejsou splněny podmínky nastavené parametrem RequireNetwork, IdleDuration a IdleTimeout , 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: | None |
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 RunWithoutNetwork vlastnost naplánovaných úloh na $false
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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 RestartOnIdleResume vlastnost naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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 Register-ScheduledJob
Credential pro zadání explicitních přihlašovacích údajů pro úlohu.
Parametr RunElevated nastaví hodnotu RunElevated vlastnost naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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í se parametry IdleDuration a IdleTimeout ignorují 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: | None |
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 StartIfOnBatteries vlastnost naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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 RestartOnIdleResume .
Parametr StopIfGoingOffIdle nastaví hodnotu StopIfGoingOffIdle vlastnost naplánovaných úloh na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
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í.
WakeToRun parametr nastaví hodnotu WakeToRun vlastnost Naplánované úlohy na $true
.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
None
Do této rutiny nemůžete roušit objekty.
Výstupy
Tato rutina vrátí objekt ScheduledJobOptions představující vytvořené možnosti.
Poznámky
Můžete použít ScheduledJobOptions objekt, který
New-ScheduledJobOption
vytvoří jako hodnotu ScheduledJobOption parametru rutinyRegister-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
- 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