Dela via


Set-ScheduledJobOption

Ändrar jobbalternativen för ett schemalagt jobb.

Syntax

Set-ScheduledJobOption
   [-InputObject] <ScheduledJobOptions>
   [-PassThru]
   [-RunElevated]
   [-HideInTaskScheduler]
   [-RestartOnIdleResume]
   [-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
   [-DoNotAllowDemandStart]
   [-RequireNetwork]
   [-StopIfGoingOffIdle]
   [-WakeToRun]
   [-ContinueIfGoingOnBattery]
   [-StartIfOnBattery]
   [-IdleTimeout <TimeSpan>]
   [-IdleDuration <TimeSpan>]
   [-StartIfIdle]
   [<CommonParameters>]

Description

Cmdleten Set-ScheduledJobOptions ändrar jobbalternativen för schemalagda jobb.

Om du vill ändra alternativen för ett schemalagt jobb börjar du med att använda cmdleten Get-ScheduledJobOption för att hämta jobbalternativen för ett schemalagt jobb. Skicka sedan alternativen till Set-ScheduledJobOption eller spara alternativen i en variabel och använd inputObject-parametern för cmdleten Set-ScheduledJobOption för att identifiera alternativen. Använd de återstående parametrarna i Set-ScheduledJobOption för att ändra jobbalternativen.

Om du vill aktivera ett jobbalternativ använder du parametern som anger det alternativet. Om du vill inaktivera ett alternativ skriver du parameternamnet, ett kolon (:) och $False. Om du till exempel vill inaktivera alternativet RunElevated skriver du -RunElevated:$False.

Varje jobbalternativobjekt innehåller en JobDefinition-egenskap som innehåller det schemalagda jobbet, så associationen med det schemalagda jobbet behålls när jobbalternativen ändras.

Alternativen för schemalagt jobb avgör hur jobbet körs när det startas av Schemaläggaren. De här alternativen gäller inte när du använder cmdleten Start-Job för att starta ett schemalagt jobb.

Set-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 Om ämnen i modulen PSScheduledJob. Importera PSScheduledJob-modulen och skriv sedan: Get-Help about_Scheduled* eller se about_Scheduled_Jobs.

Denna cmdlet introducerades i Windows PowerShell 3.0.

Exempel

Exempel 1: Ändra jobbalternativ

PS C:\> Get-ScheduledJobOption -Name "DeployPackage"
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      : False
DoNotAllowDemandStart  : False
MultipleInstancePolicy : IgnoreNew
JobDefinition          :

The second command uses the **Set-ScheduledJobOpton** cmdlet to change the job options so the values of the WakeToRun and RunWithoutNetwork properties are $True. The command uses the *Passthru* parameter to return the trigger after the change.
PS C:\> Get-ScheduledJobOption -Name "DeployPackage" | Set-ScheduledJobOption -WakeToRun -RequireNetwork:$False -Passthru
StartIfOnBatteries     : False
StopIfGoingOnBatteries : True
WakeToRun              : True
StartIfNotIdle         : True
StopIfGoingOffIdle     : False
RestartOnIdleResume    : False
IdleDuration           : 00:10:00
IdleTimeout            : 01:00:00
ShowInTaskScheduler    : True
RunElevated            : False
RunWithoutNetwork      : True
DoNotAllowDemandStart  : False
MultipleInstancePolicy : IgnoreNewJobDefinition          :

Det här exemplet visar hur du ändrar alternativen för ett schemalagt jobb på den lokala datorn.

Det första kommandot använder cmdleten Get-ScheduledJobOption för att hämta jobbalternativen för det schemalagda Jobbet DeployPackage. Utdata visar att egenskaperna WakeToRun och RunElevated är inställda på $False.

Det här kommandot krävs inte. det ingår bara för att visa effekten av alternativändringen.

Exempel 2: Ändra ett alternativ för alla fjärrplanerade jobb

PS C:\> Invoke-Command -Computer "Server01" -ScriptBlock {Get-ScheduledJob | Get-ScheduledJobOption | Set-ScheduledJobOption -IdleTimeout 2:00:00}

Det här kommandot ändrar värdet för IdleTimeout från en timme (standardvärdet) till två timmar för alla schemalagda jobb på Server01-datorn.

Kommandot använder cmdleten Invoke-Command för att köra ett kommando på Server01-datorn.

Fjärrkommandot börjar med ett Get-ScheduledJob kommando som hämtar alla schemalagda jobb på datorn. De schemalagda jobben skickas till cmdleten Get-ScheduledJobOption, som hämtar jobbalternativen för de schemalagda jobben. Varje jobbalternativobjekt innehåller en JobDefinition-egenskap som innehåller det schemalagda jobbet, så alternativobjektet förblir associerat med det schemalagda jobbet även när det ändras.

Jobbutlösarna skickas till cmdleten Set-ScheduledJobOption , som ändrar värdet för alternativet IdleTimeout till två timmar (2:00:00).

Parametrar

-ContinueIfGoingOnBattery

Stoppa inte det schemalagda jobbet om datorn växlar till batteridrift (kopplar från ström) medan jobbet körs. Som standard stoppas schemalagda jobb när datorn kopplas från nätströmmen.

Parametern ContinueIfGoingOnBattery anger värdet för egenskapen StopIfGoingOnBatteries för schemalagda jobb till $True.

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

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 uppgiften genom att välja alternativet Visa dolda aktiviteter i Schemaläggaren.

Parametern HideInTaskScheduler anger värdet för egenskapen ShowInTaskScheduler för schemalagda jobb till $False.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 inte det schemalagda jobbet förrän nästa schemalagda tid, om det finns några.

Ange ett tidsintervallobjekt, till exempel ett objekt som genereras av cmdleten New-TimeSpan, eller ange ett värde i <formatet hours>:<minutes>:<seconds> 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.

Type:TimeSpan
Position:Named
Default value:10 minutes
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdleTimeout

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 inte det schemalagda jobbet förrän nästa schemalagda tid, om det finns några.

Ange ett tidsintervallobjekt, till exempel ett objekt som genereras av cmdleten New-TimeSpan, eller ange ett värde i <formatet hours>:<minutes>:<seconds> 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.

Type:TimeSpan
Position:Named
Default value:10 minutes
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Anger jobbalternativen. Ange en variabel som innehåller ScheduledJobOptions-objekt eller skriv ett kommando eller uttryck som hämtar ScheduledJobOptions-objekt , till exempel ett Get-ScheduledJobOption kommando. Du kan också skicka ett ScheduledJobOptions-objekt till Set-ScheduledJobOption.

Type:ScheduledJobOptions
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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. De acceptabla värdena för den här parametern är:

  • IgnoreNew. Den nya jobbinstansen ignoreras. Detta är standardvärdet.
  • Parallell. Den nya jobbinstansen startar omedelbart.
  • Kö. 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, IdleDuration och IdleTimeout inte uppfylls, startas inte jobbinstansen, oavsett värdet för den här parametern.

Type:TaskMultipleInstancePolicy
Accepted values:None, IgnoreNew, Parallel, Queue, StopExisting
Position:Named
Default value:IgnoreNew
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Returnerar ett objekt som representerar det objekt som du arbetar med. Som standard genererar denna cmdlet inga utdata.

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

-RequireNetwork

Kör endast det schemalagda jobbet 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 det finns några.

Parametern RequireNetwork anger värdet för egenskapen RunWithoutNetwork för schemalagda jobb till $False.

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

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

-RunElevated

Kör det schemalagda jobbet med behörigheter för en medlem i gruppen Administratörer på den dator där jobbet körs.

Om du vill att ett schemalagt jobb ska köras med administratörsbehörigheter använder du parametern Autentiseringsuppgifter 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.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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 det finns några.

Parametern StartIfIdle anger värdet för egenskapen StartIfNotIdle för schemalagda jobb till False.

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

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

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

-WakeToRun

Aktiverar datorn från viloläge eller viloläge vid den schemalagda starttiden så att den kan köra jobbet. Om datorn är i viloläge eller viloläge vid den schemalagda starttiden körs inte jobbet som standard.

Parametern WakeToRun anger värdet för egenskapen WakeToRun för schemalagda jobb till $True.

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

Indata

ScheduledJobOptions

Du kan skicka ett schemalagt jobbalternativobjekt till Set-ScheduledJobOption.

Utdata

None or Microsoft.PowerShell.ScheduledJob.ScheduledJobOptions

När du använder parametern Passthru returnerar Set-ScheduledJobOption jobbalternativen som har ändrats. Annars genererar denna cmdlet inga utdata.