New-ScheduledJobOption

Vytvoří objekt, který obsahuje rozšířené možnosti pro naplánovanou úlohu.

Syntax

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 $falseStartIfOnBattery 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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 .

Type:TimeSpan
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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 .

Type:TimeSpan
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:Microsoft.PowerShell.ScheduledJob.TaskMultipleInstancePolicy
Accepted values:None, IgnoreNew, Parallel, Queue, StopExisting
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunElevated

Spustí naplánovanou úlohu s oprávněními člena skupiny Správa istrators v 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áva istrator, 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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

None

Do této rutiny nemůžete roušit objekty.

Výstupy

Microsoft.PowerShell.ScheduledJob.ScheduledJobOptions

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 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"}