New-ScheduledJobOption
Skapar ett objekt som innehåller avancerade alternativ för ett schemalagt jobb.
Syntax
New-ScheduledJobOption
[-RunElevated]
[-HideInTaskScheduler]
[-RestartOnIdleResume]
[-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
[-DoNotAllowDemandStart]
[-RequireNetwork]
[-StopIfGoingOffIdle]
[-WakeToRun]
[-ContinueIfGoingOnBattery]
[-StartIfOnBattery]
[-IdleTimeout <TimeSpan>]
[-IdleDuration <TimeSpan>]
[-StartIfIdle]
[<CommonParameters>]
Description
Cmdleten New-ScheduledJobOption
skapar ett objekt som innehåller avancerade alternativ för ett schemalagt jobb.
Du kan använda objektet ScheduledJobOptions som New-ScheduledJobOption
returnerar för att ange jobbalternativ för ett nytt eller befintligt schemalagt jobb. Du kan också ange jobbalternativ med hjälp av cmdleten Get-ScheduledJobOption
för att hämta jobbalternativen för ett befintligt schemalagt jobb eller genom att använda ett hashtabellvärde för att representera jobbalternativen.
Utan parametrar genererar New-ScheduledJobOption
ett objekt som innehåller standardvärdena för alla alternativ. Eftersom alla egenskaper förutom egenskapen JobDefinition kan redigeras kan du använda det resulterande objektet som en mall och skapa standardalternativobjekt för företaget.
När du skapar schemalagda jobb och anger alternativ för schemalagt jobb granskar du standardvärdena för alla schemalagda jobbalternativ. Schemalagda jobb körs endast när alla villkor som angetts för körningen är uppfyllda.
New-ScheduledJobOption
är en av en samling cmdletar för jobbschemaläggning i modulen PSScheduledJob som ingår i Windows PowerShell.
Mer information om schemalagda jobb finns i Avsnittet om i modulen PSScheduledJob. Importera modulen PSScheduledJob och skriv sedan: Get-Help about_Scheduled*
eller se about_Scheduled_Jobs.
Den här cmdleten introducerades i Windows PowerShell 3.0.
Exempel
Exempel 1: Skapa ett schemalagt jobbalternativobjekt med standardvärden
I det här exemplet skapas ett schemalagt jobbalternativobjekt med standardvärdena.
New-ScheduledJobOption
Exempel 2: Skapa ett schemalagt jobbalternativobjekt med anpassade värden
I det här exemplet skapas ett schemalagt jobbalternativobjekt med anpassade värden
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 :
Följande kommando skapar ett schemalagt jobbobjekt som kräver nätverket och kör det schemalagda jobbet även om datorn inte är ansluten till växelström.
Utdata visar att parametern RequireNetwork ändrade värdet för egenskapen RunWithoutNetwork till $false
och parametern StartIfOnBattery ändrade värdet för egenskapen StartIfOnBatteries till $true
.
Exempel 3: Ange alternativ för ett nytt schemalagt jobb
Det här exemplet visar hur du använder objektet ScheduledJobOptions som New-ScheduledJobOption
returnerar för att ange alternativen för ett nytt schemalagt jobb.
$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
Det första kommandot skapar ett ScheduledJobOptions-objekt med parametern RunElevated. Objektet sparas i variabeln $runAsAdmin
.
Det andra kommandot använder cmdleten Register-ScheduledJob
för att skapa ett nytt schemalagt jobb. Värdet för parametern ScheduledJobOption är alternativobjektet i värdet för variabeln $runAsAdmin
.
Det tredje kommandot använder cmdleten Get-ScheduledJobOption
för att hämta jobbalternativen för det schemalagda säkerhetskopieringsjobbet. Cmdlet-utdata visar att egenskapen RunElevated är inställd på $true
och egenskapen JobDefinition för jobbalternativobjektet fylls nu i med det schemalagda jobbobjektet för det schemalagda jobbet Säkerhetskopiering.
Exempel 4: Sortera egenskaperna för ett schemalagt jobbalternativobjekt
Det här exemplet visar hur du sorterar egenskaperna för ett ScheduledJobOptions objekt i alfabetisk ordning för enkel läsning.
$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
Det första kommandot använder cmdleten New-ScheduledJobOption
för att skapa ett ScheduledJobOptions-objekt. Kommandot använder parametern WakeToRun och sparar det resulterande objektet i variabeln $options
.
För att hämta egenskaperna för $Options som objekt använder det andra kommandot egenskapen PSObject för alla Windows PowerShell-objekt och dess egenskap Egenskaper. Kommandot dirigerar sedan egenskapsobjekten till cmdleten Sort-Object
, som sorterar egenskaperna i alfabetisk ordning efter namn och sedan till cmdleten Format-Table
, som visar egenskapernas namn och värden i en tabell.
Det här formatet gör det mycket enklare att hitta egenskapen WakeToRun för objektet ScheduledJobOptions i $options
och kontrollera att dess värde har ändrats från $false
till $true
.
Parametrar
-ContinueIfGoingOnBattery
Stoppa inte det schemalagda jobbet om datorn växlar till batteridrift (frånkopplas från nätström) medan jobbet körs. Som standard stoppas schemalagda jobb när datorn kopplas från växelströmmen.
Parametern ContinueIfGoingOnBattery anger värdet för egenskapen StopIfGoingOnBatteries för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-DoNotAllowDemandStart
Starta bara jobbet när det utlöses. Användarna kan inte starta jobbet manuellt, till exempel genom att använda funktionen Kör i Schemaläggaren.
Den här parametern påverkar endast Schemaläggaren. Det hindrar inte användare från att använda cmdleten Start-Job
för att starta jobbet.
Parametern DoNotAllowDemandStart anger värdet för egenskapen DoNotAllowDemandStart för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-HideInTaskScheduler
Visa inte jobbet i Schemaläggaren. Det här värdet påverkar bara den dator där jobbet körs. Som standard visas schemalagda aktiviteter i Schemaläggaren.
Även om en aktivitet är dold kan användarna visa aktiviteten genom att välja alternativet Visa dold aktivitetsvy i Schemaläggaren.
Parametern HideInTaskScheduler anger värdet för egenskapen ShowInTaskScheduler för schemalagda jobb till $false
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-IdleDuration
Anger hur länge datorn måste vara inaktiv innan jobbet startar. Standardvärdet är 10 minuter. Om datorn inte är inaktiv under den angivna varaktigheten innan värdet för IdleTimeout upphör att gälla, körs det schemalagda jobbet inte förrän nästa schemalagda tid, om någon.
Ange ett TimeSpan- objekt, till exempel ett som genereras av cmdleten New-TimeSpan
, eller ange ett värde i <timmar>:<minuter>:<sekunder> format som automatiskt konverteras till ett TimeSpan- objekt.
Om du vill aktivera det här värdet använder du parametern StartIfIdle. Som standard är egenskapen StartIfNotIdle för schemalagda jobb inställd på $true
och Windows PowerShell ignorerar värdena IdleDuration och IdleTimeout.
Typ: | TimeSpan |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-IdleTimeout
Anger hur länge det schemalagda jobbet väntar på att datorn ska vara inaktiv. Om tidsgränsen upphör att gälla innan datorn förblir inaktiv under den tidsperiod som anges av parametern IdleDuration körs inte jobbet förrän nästa schemalagda tid, om någon. Standardvärdet är en timme.
Ange ett TimeSpan- objekt, till exempel ett som genereras av cmdleten New-TimeSpan
, eller ange ett värde i <timmar>:<minuter>:<sekunder> format som automatiskt konverteras till ett TimeSpan- objekt.
Om du vill aktivera det här värdet använder du parametern StartIfIdle. Som standard är egenskapen StartIfNotIdle för schemalagda jobb inställd på $true
och Windows PowerShell ignorerar IdleDuration- och IdleTimeout- värden.
Typ: | TimeSpan |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-MultipleInstancePolicy
Avgör hur systemet svarar på en begäran om att starta en instans av ett schemalagt jobb medan en annan instans av jobbet körs. Standardvärdet är IgnoreNew
. De godtagbara värdena för den här parametern är:
-
IgnoreNew
– Den nya jobbinstansen ignoreras. -
Parallel
– Den nya jobbinstansen startar omedelbart. -
Queue
– Den nya jobbinstansen startar så snart den aktuella instansen har slutförts. -
StopExisting
– Den aktuella instansen av jobbet stoppas och den nya instansen startar.
Om du vill köra jobbet måste alla villkor för jobbschemat vara uppfyllda. Om till exempel de villkor som anges av parametrarna RequireNetwork, IdleDurationoch IdleTimeout inte är uppfyllda, startas inte jobbinstansen, oavsett värdet för den här parametern.
Typ: | TaskMultipleInstancePolicy |
Godkända värden: | None, IgnoreNew, Parallel, Queue, StopExisting |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-RequireNetwork
Kör det schemalagda jobbet endast när nätverksanslutningar är tillgängliga.
Om du anger den här parametern och nätverket inte är tillgängligt vid den schemalagda starttiden körs inte jobbet förrän nästa schemalagda starttid, om någon.
Parametern RequireNetwork anger värdet för egenskapen RunWithoutNetwork för schemalagda jobb till $false
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-RestartOnIdleResume
Startar om ett schemalagt jobb när datorn blir inaktiv. Den här parametern fungerar med parametern StopIfGoingOffIdle, som pausar ett schemalagt jobb som körs om datorn blir aktiv (lämnar inaktivt tillstånd).
Parametern RestartOnIdleResume anger värdet för egenskapen RestartOnIdleResume för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-RunElevated
Kör det schemalagda jobbet med behörigheterna för en medlem i gruppen Administratörer på den dator där jobbet körs.
Om du vill aktivera ett schemalagt jobb som ska köras med administratörsbehörigheter använder du parametern Credential för Register-ScheduledJob
för att ange explicita autentiseringsuppgifter för jobbet.
Parametern RunElevated anger värdet för egenskapen RunElevated för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-StartIfIdle
Startar det schemalagda jobbet om datorn har varit inaktiv under den tid som anges av parametern IdleDuration innan den tid som anges av parametern IdleTimeout upphör att gälla.
Som standard ignoreras parametrarna IdleDuration och IdleTimeout och jobbet startar vid den schemalagda starttiden även om datorn är upptagen.
Om du anger den här parametern och datorn är upptagen (inte inaktiv) vid den schemalagda starttiden körs inte jobbet förrän nästa schemalagda starttid, om någon.
Parametern StartIfIdle anger värdet för egenskapen StartIfNotIdle för schemalagda jobb till $false
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-StartIfOnBattery
Startar det schemalagda jobbet även om datorn körs på batterier vid den schemalagda starttiden.
Standardvärdet är $false
.
Parametern StartIfOnBattery anger värdet för egenskapen StartIfOnBatteries för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-StopIfGoingOffIdle
Pausar ett schemalagt jobb som körs om datorn blir aktiv (inte inaktiv) medan jobbet körs.
Som standard återupptas ett schemalagt jobb som pausas när datorn blir aktiv när datorn blir inaktiv igen. Om du vill ändra det här standardbeteendet använder du parametern RestartOnIdleResume.
Parametern StopIfGoingOffIdle anger värdet för egenskapen StopIfGoingOffIdle för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-WakeToRun
Växlar datorn från viloläge eller viloläge vid schemalagd starttid så att den kan köra jobbet. Om datorn är i viloläge eller viloläge vid schemalagd starttid körs inte jobbet som standard.
Parametern WakeToRun anger värdet för egenskapen WakeToRun för schemalagda jobb till $true
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
None
Du kan inte skicka objekt till den här cmdleten.
Utdata
Den här cmdleten returnerar ett ScheduledJobOptions-objekt som representerar de skapade alternativen.
Kommentarer
Du kan använda objektet ScheduledJobOptions som
New-ScheduledJobOption
skapar som värde för parametern ScheduledJobOption i cmdletenRegister-ScheduledJob
. Parametern ScheduledJobOption kan dock också ha ett hash-tabellvärde som anger egenskaperna för objektet ScheduledJobOptions och deras värden, till exempel:@{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}
Relaterade länkar
- 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