New-JobTrigger
Crée un déclencheur de travail pour un travail planifié.
Syntaxe
New-JobTrigger
[-RandomDelay <TimeSpan>]
-At <DateTime>
[-Once]
[-RepetitionInterval <TimeSpan>]
[-RepetitionDuration <TimeSpan>]
[-RepeatIndefinitely]
[<CommonParameters>]
New-JobTrigger
[-DaysInterval <Int32>]
[-RandomDelay <TimeSpan>]
-At <DateTime>
[-Daily]
[<CommonParameters>]
New-JobTrigger
[-WeeksInterval <Int32>]
[-RandomDelay <TimeSpan>]
-At <DateTime>
-DaysOfWeek <DayOfWeek[]>
[-Weekly]
[<CommonParameters>]
New-JobTrigger
[-RandomDelay <TimeSpan>]
[-AtStartup]
[<CommonParameters>]
New-JobTrigger
[-RandomDelay <TimeSpan>]
[-User <String>]
[-AtLogOn]
[<CommonParameters>]
Description
L’applet de commande New-JobTrigger crée un déclencheur de travail qui démarre un travail planifié selon une planification ponctuelle ou périodique, ou lorsqu’un événement se produit.
Vous pouvez utiliser l’objet ScheduledJobTrigger qui New-JobTrigger retourne pour définir un déclencheur de travail pour un travail planifié nouveau ou existant. Vous pouvez également créer un déclencheur de travail à l’aide de l’applet de commande Get-JobTrigger pour obtenir le déclencheur de travail d’un travail planifié existant ou à l’aide d’une valeur de table de hachage pour représenter un déclencheur de travail.
Lors de la création d’un déclencheur de travail, passez en revue les valeurs par défaut des options spécifiées par l’applet de commande New-ScheduledJobOption. Ces options, qui ont les mêmes valeurs valides et par défaut que les options correspondantes dans planificateur de tâches, affectent la planification et le minutage des travaux planifiés.
New-JobTrigger est une collection d’applets de commande de planification de travaux dans le module PSScheduledJob inclus dans Windows PowerShell.
Pour plus d’informations sur les travaux planifiés, consultez les rubriques À propos du 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 : Une fois la planification
PS C:\> New-JobTrigger -Once -At "1/20/2012 3:00 AM"
Cette commande utilise l’applet de commande New-JobTrigger pour créer un déclencheur de travail qui démarre un travail planifié une seule fois. La valeur du paramètre At est une chaîne que Windows PowerShell convertit en objet DateTime. La valeur du paramètre At inclut une date explicite, pas seulement une heure. Si la date a été omise, le déclencheur est créé avec la date actuelle et l’heure de 3h00, ce qui est susceptible de représenter une heure dans le passé.
Exemple 2 : Planification quotidienne
PS C:\> New-JobTrigger -Daily -At "4:15 AM" -DaysInterval 3
Id Frequency Time DaysOfWeek Enabled
-- --------- ---- ---------- -------
0 Daily 9/21/2012 4:15:00 AM True
Cette commande crée un déclencheur de travail qui démarre un travail planifié tous les 3 jours à 4 h 15.
Étant donné que la valeur du paramètre At n’inclut pas de date, la date actuelle est utilisée comme valeur de date dans l’objet DateTime. Si la date et l’heure sont passées, le travail planifié est démarré à l’occurrence suivante, qui est de 3 jours plus tard à partir de la valeur du paramètre At.
Exemple 3 : Planification hebdomadaire
PS C:\> New-JobTrigger -Weekly -DaysOfWeek Monday, Wednesday, Friday -At "23:00" -WeeksInterval 4
Id Frequency Time DaysOfWeek Enabled
-- --------- ---- ---------- -------
0 Weekly 9/21/2012 11:00:00 PM {Monday, Wednesday, Friday} True
Cette commande crée un déclencheur de travail qui démarre un travail planifié tous les 4 semaines le lundi, le mercredi et le vendredi à 2300 heures (11h00).
Vous pouvez également entrer la valeur de paramètre DaysOfWeek dans des entiers, comme -DaysOfWeek 1, 5
.
Exemple 4 : Planification de connexion
PS C:\> New-JobTrigger -AtLogOn -User Domain01\Admin01
Cette commande crée un déclencheur de travail qui démarre un travail planifié chaque fois que l’administrateur de domaine se connecte à l’ordinateur.
Exemple 5 : Utilisation d’un délai aléatoire
PS C:\> New-JobTrigger -Daily -At 1:00 -RandomDelay 00:20:00
Cette commande crée un déclencheur de travail qui démarre un travail planifié tous les jours à 1h00 le matin. La commande utilise le paramètre RandomDelay pour définir le délai maximal sur 20 minutes. Par conséquent, le travail s’exécute tous les jours entre 1h00 et 1h20, avec l’intervalle variable pseudo-aléatoirement.
Vous pouvez utiliser un délai aléatoire pour l’échantillonnage, l’équilibrage de charge et d’autres tâches administratives. Lorsque vous définissez la valeur du délai, passez en revue les valeurs effectives et par défaut de l’applet de commande New-ScheduledJobOption et coordonnez le délai avec les paramètres d’option.
Exemple 6 : Créer un déclencheur de travail pour un nouveau travail planifié
The first command uses the **New-JobTrigger** cmdlet to create a job trigger that starts a job every Monday, Wednesday, and Friday at 12:01 AM. The command saves the job trigger in the $T variable.
PS C:\> $T = New-JobTrigger -Weekly -DaysOfWeek 1,3,5 -At 12:01AM
The second command uses the Register-ScheduledJob cmdlet to create a scheduled job that starts a job every Monday, Wednesday, and Friday at 12:01 AM. The value of the *Trigger* parameter is the trigger that is stored in the $T variable.
PS C:\> Register-ScheduledJob -Name Test-HelpFiles -FilePath C:\Scripts\Test-HelpFiles.ps1 -Trigger $T
Ces commandes utilisent un déclencheur de travail pour créer un travail planifié.
Exemple 7 : Ajouter un déclencheur de travail à un travail planifié
PS C:\> Add-JobTrigger -Name SynchronizeApps -Trigger (New-JobTrigger -Daily -At 3:10AM)
Cet exemple montre comment ajouter un déclencheur de travail à un travail planifié existant. Vous pouvez ajouter plusieurs déclencheurs de travail à n’importe quel travail planifié.
La commande utilise l’applet de commande Add-JobTrigger pour ajouter le déclencheur de travail au travail planifié SynchronizeApps. La valeur du paramètre Déclencheur est une commande New-JobTrigger qui exécute le travail tous les jours à 3h10.
Une fois la commande terminée, SynchronizeApps est un travail planifié qui s’exécute aux heures spécifiées par le déclencheur de travail.
Exemple 8 : Créer un déclencheur de travail répétitif
PS C:\> New-JobTrigger -Once -At "09/12/2013 1:00:00" -RepetitionInterval (New-TimeSpan -Hours 1) -RepetitionDuration (New-Timespan -Hours 48)
Cette commande crée un déclencheur de travail qui exécute un travail toutes les 60 minutes pendant 48 heures à compter du 12 septembre 2013 à 13h00.
Exemple 9 : Arrêter un déclencheur de travail répétitif
PS C:\> Get-JobTrigger -Name SecurityCheck | Set-JobTrigger -RepetitionInterval 0:00 -RepetitionDuration 0:00
Cette commande arrête de force le travail SecurityCheck, qui est déclenché pour s’exécuter toutes les 60 minutes jusqu’à l’expiration de son déclencheur de travail.
Pour empêcher la répétition du travail, la commande utilise le Get-JobTrigger pour obtenir le déclencheur de travail du travail SecurityCheck et l’applet de commande Set-JobTrigger pour modifier l’intervalle de répétition et la durée de répétition du déclencheur de travail sur zéro (0).
Exemple 10 : Créer un déclencheur de travail horaire
PS C:\> New-JobTrigger -Once -At "9/21/2012 0am" -RepetitionInterval (New-TimeSpan -Hour 12) -RepetitionDuration ([TimeSpan]::MaxValue)
La commande suivante crée un déclencheur de travail qui exécute un travail planifié une fois toutes les 12 heures pendant une période indéfinie. La planification commence demain (21/09/2012) à minuit (0h00).
Paramètres
-At
Démarre le travail à la date et à l’heure spécifiées. Entrez un objet DateTime, tel que celui retourné par l’applet de commande Get-Date, ou une chaîne pouvant être convertie en date et heure, par exemple « 19 avril 2012 15:00 », « 12/31 » ou « 3am ». Si vous ne spécifiez pas d’élément de la date, par exemple l’année, la date dans le déclencheur a l’élément correspondant de la date actuelle.
Lorsque vous utilisez le paramètre Once, définissez la valeur du paramètre At sur une date et une heure ultérieures. Étant donné que la date par défaut d’un objet DateTime est la date actuelle, si vous spécifiez une heure avant l’heure actuelle sans date explicite, le déclencheur de travail est créé pour une heure dans le passé.
objets DateTime et les chaînes converties en objets DateTime, sont automatiquement ajustées pour être compatibles avec les formats de date et d’heure sélectionnés pour l’ordinateur local dans la région et la langue dans le Panneau de configuration.
Type: | DateTime |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-AtLogOn
Démarre le travail planifié lorsque les utilisateurs spécifiés se connectent à l’ordinateur. Pour spécifier un utilisateur, utilisez le paramètre Utilisateur.
Type: | SwitchParameter |
Position: | 0 |
Valeur par défaut: | False |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-AtStartup
Démarre le travail planifié au démarrage de Windows.
Type: | SwitchParameter |
Position: | 0 |
Valeur par défaut: | False |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Daily
Spécifie une planification quotidienne périodique des travaux. Utilisez les autres paramètres dans le jeu de paramètres Daily pour spécifier les détails de la planification.
Type: | SwitchParameter |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DaysInterval
Spécifie le nombre de jours entre les occurrences selon une planification quotidienne. Par exemple, une valeur de 3 démarre le travail planifié les jours 1, 4, 7, et ainsi de suite. La valeur par défaut est 1.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 1 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-DaysOfWeek
Spécifie les jours de la semaine sur lesquels une tâche planifiée hebdomadaire s’exécute. Entrez les noms de jour, tels que « Lundi » ou entiers 0-6, où 0 représente dimanche. Ce paramètre est requis dans l’ensemble de paramètres Hebdomadaires.
Les noms de jour sont convertis en valeurs entières dans le déclencheur de travail. Lorsque vous placez des noms de jour entre guillemets dans une commande, placez chaque nom de jour entre guillemets distincts, tels que « Lundi », « Mardi ». Si vous placez plusieurs noms de jour dans une paire de guillemets simples, les valeurs entières correspondantes sont additionnées. Par exemple, « Lundi, Mardi » (1, 2) entraîne la valeur « Mercredi » (3).
Type: | DayOfWeek[] |
Valeurs acceptées: | Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Once
Spécifie une planification répétée non périodique (une seule fois) ou personnalisée. Pour créer une planification répétée, utilisez le paramètre Once avec les paramètres RepeatDuration et RepeatInterval.
Type: | SwitchParameter |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RandomDelay
Active un délai aléatoire qui commence à l’heure de début planifiée et définit la valeur de délai maximale. La longueur du délai est définie pseudo-aléatoirement pour chaque début et varie d’un délai à l’heure spécifiée par la valeur de ce paramètre. La valeur par défaut, zéro (00:00:00), désactive le délai aléatoire.
Entrez un objet timespan, tel qu’un retourné par l’applet de commande New-TimeSpan, ou entrez une valeur en <heures>:<minutes>:<secondes> format, qui est automatiquement converti en objet TimeSpan .
Type: | TimeSpan |
Position: | Named |
Valeur par défaut: | 00:00:00 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RepeatIndefinitely
Ce paramètre, disponible à partir de Windows PowerShell 4.0, élimine la nécessité de spécifier une valeur TimeSpan.MaxValue pour le paramètre RepetitionDuration pour exécuter un travail planifié à plusieurs reprises, pendant une période indéfinie.
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 |
-RepetitionDuration
Répète le travail jusqu’à l’expiration de l’heure spécifiée. La fréquence de répétition est déterminée par la valeur du paramètre RepetitionInterval. Par exemple, si la valeur de RepetitionInterval est de 5 minutes et que la valeur de RepetitionDuration est de 2 heures, le travail est déclenché toutes les cinq minutes pendant deux heures.
Entrez un objet timespan, tel que celui que l’applet de commande New-TimeSpan renvoie ou une chaîne qui peut être convertie en objet timespan, par exemple « 1:05:30 ».
Pour exécuter un travail indéfiniment, ajoutez le paramètre RepeatIndefinitely à la place.
Pour arrêter un travail avant l’expiration de la durée de répétition du déclencheur de travail, utilisez l’applet de commande Set-JobTrigger pour définir la valeur de répétition
Ce paramètre n’est valide que lorsque les paramètres Une fois, At et Parameters RepetitionInterval sont utilisés dans la commande.
Type: | TimeSpan |
Position: | Named |
Valeur par défaut: | 0 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RepetitionInterval
Répète le travail à l’intervalle de temps spécifié. Par exemple, si la valeur de ce paramètre est de 2 heures, le travail est déclenché toutes les deux heures. La valeur par défaut, 0, ne répète pas le travail.
Entrez un objet timespan, tel que celui que l’applet de commande New-TimeSpan renvoie ou une chaîne qui peut être convertie en objet timespan, par exemple « 1:05:30 ».
Ce paramètre n’est valide que lorsque les paramètres Once, Atet RepetitionDuration sont utilisés dans la commande.
Type: | TimeSpan |
Position: | Named |
Valeur par défaut: | 0 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-User
Spécifie les utilisateurs qui déclenchent un AtLogon début d’un travail planifié. Entrez le nom d’un utilisateur au format <UserName> ou <Domain\Username> format ou entrez un astérisque (*) pour représenter tous les utilisateurs. La valeur par défaut est tous les utilisateurs.
Type: | String |
Position: | Named |
Valeur par défaut: | All users |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Weekly
Spécifie une planification périodique des travaux hebdomadaires. Utilisez les autres paramètres de l’ensemble de paramètres Hebdomadaires pour spécifier les détails de la planification.
Type: | SwitchParameter |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-WeeksInterval
Spécifie le nombre de semaines entre les occurrences selon une planification de travail hebdomadaire. Par exemple, la valeur 3 démarre le travail planifié sur les semaines 1, 4, 7, et ainsi de suite. La valeur par défaut est 1.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 1 |
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 l’entrée vers cette applet de commande.
Sorties
Notes
Les déclencheurs de travail ne sont pas enregistrés sur le disque. Toutefois, les travaux planifiés sont enregistrés sur le disque et vous pouvez utiliser le Get-JobTrigger pour obtenir le déclencheur de travail de n’importe quel travail planifié.
' New-JobTrigger n’empêche pas de créer un déclencheur de travail qui n’exécutera pas de travail planifié, comme un déclencheur à usage unique pour une date dans le passé.
L’applet de commande Register-ScheduledJob accepte un objet ScheduledJobTrigger, tel qu’un retourné par l'New-JobTrigger ou des applets de commande Get-JobTrigger, ou une table de hachage avec des valeurs de déclencheur.
Pour envoyer une table de hachage, utilisez les clés suivantes.
@{Frequency="Once" (or Daily, Weekly, AtStartup, AtLogon);At="3am"
(ou toute chaîne de temps valide) ;DaysOfWeek="Monday", "Wednesday"
(ou toute combinaison de noms de jour) ;Interval=2
(ou tout intervalle de fréquence valide) ;RandomDelay="30minutes"
(ou toute chaîne d’intervalle de temps valide) ;User="Domain1\User01
(ou tout utilisateur valide ; utilisé uniquement avec la valeur de fréquence AtLogon) }
Liens associés
- about_Scheduled_Jobs
- 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