New-ScheduledJobOption
Crée un objet qui contient des options avancées pour une tâche planifiée.
Syntaxe
New-ScheduledJobOption
[-RunElevated]
[-HideInTaskScheduler]
[-RestartOnIdleResume]
[-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
[-DoNotAllowDemandStart]
[-RequireNetwork]
[-StopIfGoingOffIdle]
[-WakeToRun]
[-ContinueIfGoingOnBattery]
[-StartIfOnBattery]
[-IdleTimeout <TimeSpan>]
[-IdleDuration <TimeSpan>]
[-StartIfIdle]
[<CommonParameters>]
Description
L’applet New-ScheduledJobOption
de commande crée un objet qui contient des options avancées pour un travail planifié.
Vous pouvez utiliser l’objet ScheduledJobOptions qui New-ScheduledJobOption
retourne pour définir des options de travail pour un travail planifié nouveau ou existant. Vous pouvez également définir des options de travail à l’aide de l’applet Get-ScheduledJobOption
de commande pour obtenir les options de travail d’un travail planifié existant ou à l’aide d’une valeur de table de hachage pour représenter les options de travail.
Sans paramètres, New-ScheduledJobOption
génère un objet qui contient les valeurs par défaut pour toutes les options. Étant donné que toutes les propriétés à l’exception de la propriété JobDefinition peuvent être modifiées, vous pouvez utiliser l’objet résultant comme modèle et créer des objets d’option standard pour votre entreprise.
Lors de la création de tâches planifiées et de la définition des options de tâches planifiées, examinez les valeurs par défaut de toutes les options de tâches planifiées. Les tâches planifiées sont exécutées uniquement quand toutes les conditions définies pour leur exécution sont satisfaites.
New-ScheduledJobOption
est l’une des collections d’applets de commande de planification de travaux dans le module PSScheduledJob inclus dans Windows PowerShell.
Pour plus d'informations sur les tâches planifiées, consultez les rubriques À propos dans le module PSScheduledJob. Importez le module PSScheduledJob, puis tapez : Get-Help about_Scheduled*
ou consultez about_Scheduled_Jobs.
Cette applet de commande a été introduite dans Windows PowerShell 3.0.
Exemples
Exemple 1 : Créer un objet d’option de travail planifié avec des valeurs par défaut
Cet exemple crée un objet d’option de travail planifié avec les valeurs par défaut.
New-ScheduledJobOption
Exemple 2 : Créer un objet d’option de travail planifié avec des valeurs personnalisées
Cet exemple crée un objet d’option de travail planifié avec des valeurs personnalisées
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 :
La commande suivante crée un objet de tâche planifiée qui nécessite le réseau et exécute la tâche planifiée, même si l'ordinateur n'est pas connecté à l'alimentation secteur.
La sortie indique que le paramètre RequireNetwork a modifié la valeur de la propriété RunWithoutNetwork et $false
que le paramètre StartIfOnBattery a changé la valeur de la propriété $true
StartIfOnBatteries sur .
Exemple 3 : Définir des options pour un nouveau travail planifié
Cet exemple montre comment utiliser l’objet ScheduledJobOptions qui New-ScheduledJobOption
retourne pour définir les options d’un nouveau travail planifié.
$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
La première commande crée un objet ScheduledJobOptions avec le paramètre RunElevated . Il enregistre l’objet dans la $runAsAdmin
variable.
La deuxième commande utilise l’applet Register-ScheduledJob
de commande pour créer un travail planifié. La valeur du paramètre ScheduledJobOption est l’objet d’option dans la valeur de la $runAsAdmin
variable.
La troisième commande utilise l’applet Get-ScheduledJobOption
de commande pour obtenir les options de travail du travail planifié de sauvegarde. La sortie de l’applet de commande indique que la propriété RunElevated est définie $true
et que la propriété JobDefinition de l’objet d’option de travail est maintenant remplie avec l’objet de travail planifié pour la tâche planifiée de sauvegarde.
Exemple 4 : Trier les propriétés d’un objet d’option de travail planifié
Cet exemple montre comment trier les propriétés d’un objet ScheduledJobOptions par ordre alphabétique pour faciliter la lecture.
$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
La première commande utilise l’applet New-ScheduledJobOption
de commande pour créer un objet ScheduledJobOptions . La commande utilise le paramètre WakeToRun et enregistre l’objet résultant dans la $options
variable.
Pour obtenir les propriétés de $Options en tant qu’objets, la deuxième commande utilise la propriété PSObject de tous les objets Windows PowerShell et de sa propriété Properties. La commande transmet ensuite les objets de propriété à l’applet Sort-Object
de commande, qui trie les propriétés par ordre alphabétique par nom, puis vers l’applet Format-Table
de commande, qui affiche les noms et les valeurs des propriétés d’une table.
Ce format facilite considérablement la recherche de la propriété WakeToRun de l’objet ScheduledJobOptions dans $options
et de vérifier que sa valeur a été remplacée $false
par $true
.
Paramètres
-ContinueIfGoingOnBattery
Ne pas arrêter la tâche planifiée si l'ordinateur passe en mode d'alimentation par batterie (se déconnecte de l'alimentation secteur) pendant l'exécution de la tâche. Par défaut, les tâches planifiées s'arrêtent quand l'ordinateur se déconnecte de l'alimentation secteur.
Le paramètre ContinueIfGoingOnBattery définit la valeur de la propriété StopIfGoingOnBatteries des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DoNotAllowDemandStart
Démarrer la tâche uniquement au moment où elle est déclenchée. Les utilisateurs ne peuvent pas démarrer la tâche manuellement, notamment à l'aide de la fonctionnalité Exécuter du Planificateur de tâches.
Ce paramètre affecte uniquement le Planificateur de tâches. Il n’empêche pas les utilisateurs d’utiliser l’applet Start-Job
de commande pour démarrer le travail.
Le paramètre DoNotAllowDemandStart définit la valeur de la propriété DoNotAllowDemandStart des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-HideInTaskScheduler
Ne pas afficher la tâche dans le Planificateur de tâches. Cette valeur affecte uniquement l'ordinateur sur lequel s'exécute la tâche. Par défaut, les tâches planifiées apparaissent dans le Planificateur de tâches.
Même si une tâche est masquée, les utilisateurs peuvent afficher la tâche en sélectionnant l’option Afficher l’affichage des tâches masquées dans le Planificateur de tâches.
Le paramètre HideInTaskScheduler définit la valeur de la propriété ShowInTaskScheduler des travaux $false
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-IdleDuration
Spécifie la durée pendant laquelle l'ordinateur doit être inactif avant que la tâche commence. La valeur par défaut est de 10 minutes. Si l’ordinateur n’est pas inactif pendant la durée spécifiée avant l’expiration de la valeur de IdleTimeout , le travail planifié ne s’exécute pas tant que l’heure planifiée suivante n’est pas exécutée, le cas échéant.
Entrez un objet TimeSpan, tel qu’un objet généré par l’applet New-TimeSpan
de commande, ou entrez une valeur au <format heures> :<minutes> :<secondes> qui est automatiquement convertie en objet TimeSpan.
Pour activer cette valeur, utilisez le paramètre StartIfIdle . Par défaut, la propriété StartIfNotIdle des travaux planifiés est définie $true
sur et Windows PowerShell ignore les valeurs IdleDuration et IdleTimeout .
Type: | TimeSpan |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-IdleTimeout
Spécifie la durée pendant laquelle la tâche planifiée attend que l'ordinateur soit inactif. Si ce délai d’expiration expire avant que l’ordinateur reste inactif pendant la période spécifiée par le paramètre IdleDuration , le travail ne s’exécute pas jusqu’à l’heure planifiée suivante, le cas échéant. La valeur par défaut est une heure.
Entrez un objet TimeSpan, tel qu’un objet généré par l’applet New-TimeSpan
de commande, ou entrez une valeur au <format heures> :<minutes> :<secondes> qui est automatiquement convertie en objet TimeSpan.
Pour activer cette valeur, utilisez le paramètre StartIfIdle . Par défaut, la propriété StartIfNotIdle des travaux planifiés est définie $true
sur et Windows PowerShell ignore les valeurs IdleDuration et IdleTimeout .
Type: | TimeSpan |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MultipleInstancePolicy
Détermine comment le système répond à une demande de démarrage d'une instance d'une tâche planifiée alors qu'une autre instance de la tâche est en cours d'exécution. La valeur par défaut est IgnoreNew
. Les valeurs valides pour ce paramètre sont :
IgnoreNew
- La nouvelle instance de travail est ignorée.Parallel
- La nouvelle instance de travail démarre immédiatement.Queue
- La nouvelle instance de travail démarre dès que l’instance actuelle se termine.StopExisting
- L’instance actuelle du travail s’arrête et la nouvelle instance démarre.
Pour exécuter la tâche, toutes les conditions de la planification des tâches doivent être remplies. Par exemple, si les conditions définies par les paramètres RequireNetwork, IdleDuration et IdleTimeout ne sont pas satisfaites, l’instance de travail n’est pas démarrée, quelle que soit la valeur de ce paramètre.
Type: | TaskMultipleInstancePolicy |
Valeurs acceptées: | None, IgnoreNew, Parallel, Queue, StopExisting |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RequireNetwork
Exécute la tâche planifiée uniquement quand des connexions réseau sont disponibles.
Si vous spécifiez ce paramètre et que le réseau n'est pas disponible à l'heure de début planifiée, la tâche ne s'exécute pas avant la prochaine heure de début planifiée, le cas échéant.
Le paramètre RequireNetwork définit la valeur de la propriété RunWithoutNetwork des travaux $false
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RestartOnIdleResume
Redémarre une tâche planifiée quand l'ordinateur devient inactif. Ce paramètre fonctionne avec le paramètre StopIfGoingOffIdle , qui suspend une tâche planifiée en cours d’exécution si l’ordinateur devient actif (laisse l’état inactif).
Le paramètre RestartOnIdleResume définit la valeur de la propriété RestartOnIdleResume des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RunElevated
Exécute la tâche planifiée avec les autorisations d'un membre du groupe Administrateurs sur l'ordinateur sur lequel s'exécute la tâche.
Pour permettre à un travail planifié de s’exécuter avec des autorisations d’administrateur, utilisez le paramètre Credential pour Register-ScheduledJob
fournir des informations d’identification explicites pour le travail.
Le paramètre RunElevated définit la valeur de la propriété RunElevated des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-StartIfIdle
Démarre le travail planifié si l’ordinateur a été inactif pendant l’heure spécifiée par le paramètre IdleDuration avant l’expiration de l’heure spécifiée par le paramètre IdleTimeout .
Par défaut, les paramètres IdleDuration et IdleTimeout sont ignorés et le travail démarre à l’heure de début planifiée, même si l’ordinateur est occupé.
Si vous spécifiez ce paramètre et que l'ordinateur est occupé (non inactif) à l'heure de début planifiée, la tâche ne s'exécute pas avant la prochaine heure de début planifiée, le cas échéant.
Le paramètre StartIfIdle définit la valeur de la propriété StartIfNotIdle des travaux $false
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-StartIfOnBattery
Démarre la tâche planifiée, même si l'ordinateur fonctionne sur batterie à l'heure de début planifiée.
La valeur par défaut est $false
.
Le paramètre StartIfOnBattery définit la valeur de la propriété StartIfOnBatteries des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-StopIfGoingOffIdle
Interrompt une tâche planifiée en cours d'exécution si l'ordinateur devient actif (non inactif) alors que la tâche est en cours d'exécution.
Par défaut, une tâche planifiée qui est suspendue quand l'ordinateur devient actif reprend quand il redevient inactif. Pour modifier ce comportement par défaut, utilisez le paramètre RestartOnIdleResume .
Le paramètre StopIfGoingOffIdle définit la valeur de la propriété StopIfGoingOffIdle des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-WakeToRun
Sort l'ordinateur de son état de veille prolongée ou de veille à l'heure de début planifiée afin qu'il puisse exécuter la tâche. Par défaut, si l'ordinateur est dans un état de veille prolongée ou de veille à l'heure de début planifiée, la tâche ne s'exécute pas.
Le paramètre WakeToRun définit la valeur de la propriété WakeToRun des travaux $true
planifiés sur .
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
Cette applet de commande retourne un objet ScheduledJobOptions représentant les options créées .
Notes
Vous pouvez utiliser l’objet ScheduledJobOptions qui
New-ScheduledJobOption
crée comme valeur du paramètre ScheduledJobOption de l’appletRegister-ScheduledJob
de commande. Toutefois, le paramètre ScheduledJobOption peut également prendre une valeur de table de hachage qui spécifie les propriétés de l’objet ScheduledJobOptions et leurs valeurs, telles que :@{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}
Liens associés
- 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