New-ScheduledJobOption
Hiermee maakt u een object met geavanceerde opties voor een geplande taak.
Syntax
New-ScheduledJobOption
[-RunElevated]
[-HideInTaskScheduler]
[-RestartOnIdleResume]
[-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
[-DoNotAllowDemandStart]
[-RequireNetwork]
[-StopIfGoingOffIdle]
[-WakeToRun]
[-ContinueIfGoingOnBattery]
[-StartIfOnBattery]
[-IdleTimeout <TimeSpan>]
[-IdleDuration <TimeSpan>]
[-StartIfIdle]
[<CommonParameters>]
Description
Met de New-ScheduledJobOption cmdlet maakt u een object met geavanceerde opties voor een geplande taak.
U kunt het object ScheduledJobOptions gebruiken dat New-ScheduledJobOption terugkeert om taakopties in te stellen voor een nieuwe of bestaande geplande taak. U kunt ook taakopties instellen met behulp van de Get-ScheduledJobOption cmdlet om de taakopties van een bestaande geplande taak op te halen of door een hashtabelwaarde te gebruiken om de taakopties weer te geven.
Zonder parameters genereert New-ScheduledJobOption u een object dat de standaardwaarden voor alle opties bevat. Omdat alle eigenschappen behalve de eigenschap JobDefinition kunnen worden bewerkt, kunt u het resulterende object als sjabloon gebruiken en standaardoptieobjecten maken voor uw onderneming.
Wanneer u geplande taken maakt en geplande taakopties instelt, controleert u de standaardwaarden van alle geplande taakopties. Geplande taken worden alleen uitgevoerd wanneer aan alle voorwaarden voor de uitvoering ervan wordt voldaan.
New-ScheduledJobOptionis een van een verzameling cmdlets voor taakplanning in de PSScheduledJob-module die is opgenomen in Windows PowerShell.
Zie de onderwerpen Over geplande taken in de PSScheduledJob-module voor meer informatie over geplande taken. Importeer de PSScheduledJob-module en typ vervolgens: Get-Help about_Scheduled* of zie about_Scheduled_Jobs.
Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.
Voorbeelden
Voorbeeld 1: Een gepland taakoptieobject maken met standaardwaarden
In dit voorbeeld wordt een gepland taakoptieobject gemaakt met de standaardwaarden.
New-ScheduledJobOption
Voorbeeld 2: Een gepland taakoptieobject maken met aangepaste waarden
In dit voorbeeld wordt een gepland taakoptieobject met aangepaste waarden gemaakt
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 :
Met de volgende opdracht maakt u een gepland taakobject waarvoor het netwerk is vereist en de geplande taak wordt uitgevoerd, zelfs als de computer niet is verbonden met netstroom.
In de uitvoer ziet u dat de parameter RequireNetwork de waarde van de eigenschap RunWithoutNetwork heeft gewijzigd in $false en dat de parameter StartIfOnBattery de waarde van de eigenschap StartIfOnBatteries heeft gewijzigd in $true.
Voorbeeld 3: Opties instellen voor een nieuwe geplande taak
In dit voorbeeld ziet u hoe u het object ScheduledJobOptions gebruikt dat New-ScheduledJobOption terugkeert om de opties voor een nieuwe geplande taak in te stellen.
$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
Met de eerste opdracht maakt u een ScheduledJobOptions-object met de parameter RunElevated . Het object wordt opgeslagen in de $runAsAdmin variabele.
De tweede opdracht gebruikt de Register-ScheduledJob cmdlet om een nieuwe geplande taak te maken. De waarde van de parameter ScheduledJobOption is het optieobject in de waarde van de $runAsAdmin variabele.
De derde opdracht maakt gebruik van de Get-ScheduledJobOption cmdlet om de taakopties van de geplande back-uptaak op te halen. De uitvoer van de cmdlet laat zien dat de eigenschap RunElevated is ingesteld op $true en dat de eigenschap JobDefinition van het taakoptieobject nu wordt gevuld met het geplande taakobject voor de geplande back-uptaak.
Voorbeeld 4: De eigenschappen van een gepland taakoptieobject sorteren
In dit voorbeeld ziet u hoe u de eigenschappen van een ScheduledJobOptions-object in alfabetische volgorde sorteert om gemakkelijk te lezen.
$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
De eerste opdracht maakt gebruik van de New-ScheduledJobOption cmdlet om een ScheduledJobOptions-object te maken. De opdracht maakt gebruik van de WakeToRun-parameter en slaat het resulterende object op in de $options variabele.
Als u de eigenschappen van $Options als objecten wilt ophalen, gebruikt de tweede opdracht de eigenschap PSObject van alle Windows PowerShell objecten en de eigenschap Eigenschappen. Met de opdracht worden de eigenschapsobjecten vervolgens doorzocht naar de Sort-Object cmdlet, waarmee de eigenschappen in alfabetische volgorde op naam worden gesorteerd en vervolgens naar de Format-Table cmdlet, waarin de namen en waarden van de eigenschappen in een tabel worden weergegeven.
Deze indeling maakt het veel eenvoudiger om de eigenschap WakeToRun van het object ScheduledJobOptions in $options te vinden en om te controleren of de waarde is gewijzigd van $false$true.
Parameters
Stop de geplande taak niet als de computer overschakelt naar accustroom (wordt losgekoppeld van netstroom) terwijl de taak wordt uitgevoerd. Geplande taken stoppen standaard wanneer de computer de verbinding met netstroom verbreekt.
De parameter ContinueIfGoingOnBattery stelt de waarde van de eigenschap StopIfGoingOnBatteries van geplande taken in op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Start de taak alleen wanneer deze wordt geactiveerd. Gebruikers kunnen de taak niet handmatig starten, zoals met de functie Uitvoeren in Task Scheduler.
Deze parameter is alleen van invloed op Task Scheduler. Het voorkomt niet dat gebruikers de Start-Job cmdlet gebruiken om de taak te starten.
Met de parameter DoNotAllowDemandStart wordt de waarde van de eigenschap DoNotAllowDemandStart van geplande taken ingesteld op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Geef de taak niet weer in Task Scheduler. Deze waarde is alleen van invloed op de computer waarop de taak wordt uitgevoerd. Geplande taken worden standaard weergegeven in Task Scheduler.
Zelfs als een taak verborgen is, kunnen gebruikers de taak weergeven door de optie Verborgen taken weergeven te selecteren in Task Scheduler.
De parameter HideInTaskScheduler stelt de waarde van de eigenschap ShowInTaskScheduler van geplande taken in op $false.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u op hoe lang de computer inactief moet zijn voordat de taak wordt gestart. De standaardwaarde is 10 minuten. Als de computer niet actief is voor de opgegeven duur voordat de waarde van IdleTimeout verloopt, wordt de geplande taak pas uitgevoerd als de volgende geplande tijd, indien aanwezig.
Voer een TimeSpan-object in, zoals een object dat is gegenereerd door de New-TimeSpan cmdlet, of voer een waarde in <de notatie hours>:<minutes>:<seconds> in die automatisch wordt geconverteerd naar een TimeSpan-object .
Gebruik de parameter StartIfIdle om deze waarde in te schakelen. De eigenschap StartIfNotIdle van geplande taken is standaard ingesteld op $true en Windows PowerShell negeert de waarden IdleDuration en IdleTimeout.
| Type: | TimeSpan |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u op hoe lang de geplande taak wacht totdat de computer inactief is. Als deze time-out verloopt voordat de computer inactief blijft voor de periode die is opgegeven door de parameter IdleDuration , wordt de taak pas uitgevoerd als de volgende geplande tijd, indien van toepassing. De standaardwaarde is één uur.
Voer een TimeSpan-object in, zoals een object dat is gegenereerd door de New-TimeSpan cmdlet, of voer een waarde in <de notatie hours>:<minutes>:<seconds> in die automatisch wordt geconverteerd naar een TimeSpan-object .
Gebruik de parameter StartIfIdle om deze waarde in te schakelen. De eigenschap StartIfNotIdle van geplande taken is standaard ingesteld op $true en Windows PowerShell negeert de waarden IdleDuration en IdleTimeout.
| Type: | TimeSpan |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Bepaalt hoe het systeem reageert op een aanvraag om een exemplaar van een geplande taak te starten terwijl een ander exemplaar van de taak wordt uitgevoerd. De standaardwaarde is IgnoreNew. De aanvaardbare waarden voor deze parameter zijn:
IgnoreNew- Het nieuwe taakexemplaren wordt genegeerd.Parallel- Het nieuwe taakexemplaren wordt onmiddellijk gestart.Queue- Het nieuwe taakexemplaren wordt gestart zodra het huidige exemplaar is voltooid.StopExisting- Het huidige exemplaar van de taak stopt en het nieuwe exemplaar wordt gestart.
Als u de taak wilt uitvoeren, moeten aan alle voorwaarden voor het taakschema worden voldaan. Als bijvoorbeeld de voorwaarden die zijn ingesteld door de parameters RequireNetwork, IdleDuration en IdleTimeout niet worden voldaan, wordt het taakexemplementatie niet gestart, ongeacht de waarde van deze parameter.
| Type: | Microsoft.PowerShell.ScheduledJob.TaskMultipleInstancePolicy |
| Accepted values: | None, IgnoreNew, Parallel, Queue, StopExisting |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee wordt de geplande taak alleen uitgevoerd wanneer netwerkverbindingen beschikbaar zijn.
Als u deze parameter opgeeft en het netwerk niet beschikbaar is op de geplande begintijd, wordt de taak pas uitgevoerd als de volgende geplande begintijd, indien aanwezig.
Met de parameter RequireNetwork wordt de waarde van de eigenschap RunWithoutNetwork van geplande taken ingesteld op $false.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Start een geplande taak opnieuw wanneer de computer inactief wordt. Deze parameter werkt met de parameter StopIfGoingOffIdle , waardoor een actieve geplande taak wordt onderbroken als de computer actief wordt (laat de status inactief).
De parameter RestartOnIdleResume stelt de waarde van de eigenschap RestartOnIdleResume van geplande taken in op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee wordt de geplande taak uitgevoerd met de machtigingen van een lid van de groep Administrators op de computer waarop de taak wordt uitgevoerd.
Als u wilt dat een geplande taak kan worden uitgevoerd met beheerdersmachtigingen, gebruikt u de referentieparameter om Register-ScheduledJob expliciete referenties voor de taak op te geven.
Met de parameter RunElevated wordt de waarde van de eigenschap RunElevated van geplande taken ingesteld op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee start u de geplande taak als de computer gedurende de tijd die is opgegeven door de parameter IdleDuration voordat de tijd die door de parameter IdleTimeout is opgegeven, verloopt.
De parameters IdleDuration en IdleTimeout worden standaard genegeerd en de taak begint op de geplande begintijd, zelfs als de computer bezet is.
Als u deze parameter opgeeft en de computer bezet is (niet-actief) op de geplande begintijd, wordt de taak pas uitgevoerd als de volgende geplande begintijd, indien aanwezig.
Met de parameter StartIfIdle wordt de waarde van de eigenschap StartIfNotIdle van geplande taken ingesteld op $false.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Start de geplande taak, zelfs als de computer wordt uitgevoerd op batterijen op de geplande begintijd.
De standaardwaarde is $false.
Met de parameter StartIfOnBattery wordt de waarde van de eigenschap StartIfOnBatteries van geplande taken ingesteld op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Onderbreekt een actieve geplande taak als de computer actief (niet-actief) wordt terwijl de taak wordt uitgevoerd.
Standaard wordt een geplande taak onderbroken wanneer de computer actief wordt hervat wanneer de computer weer inactief is. Als u dit standaardgedrag wilt wijzigen, gebruikt u de parameter RestartOnIdleResume .
De parameter StopIfGoingOffIdle stelt de waarde van de eigenschap StopIfGoingOffIdle van geplande taken in op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
De computer wordt geactiveerd vanuit een sluimerstand of slaapstand op de geplande begintijd, zodat de taak kan worden uitgevoerd. Als de computer zich in de slaapstand of slaapstand bevindt op de geplande begintijd, wordt de taak standaard niet uitgevoerd.
Met de parameter WakeToRun wordt de waarde van de eigenschap WakeToRun van geplande taken ingesteld op $true.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Invoerwaarden
None
U kunt geen invoer doorsluisen naar deze cmdlet.
Uitvoerwaarden
Microsoft.PowerShell.ScheduledJob.ScheduledJobOptions
Notities
U kunt het object ScheduledJobOptions gebruiken dat
New-ScheduledJobOptionwordt gemaakt als de waarde van de parameter ScheduledJobOption van deRegister-ScheduledJobcmdlet. De parameter ScheduledJobOption kan echter ook een hashtabelwaarde gebruiken waarmee de eigenschappen van het object ScheduledJobOptions en de bijbehorende waarden worden opgegeven, zoals:@{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}
Verwante koppelingen
- 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
Feedback
Feedback verzenden en weergeven voor