« PowerShell/Tâche planifiée » : différence entre les versions
Aller à la navigation
Aller à la recherche
mAucun résumé des modifications |
mAucun résumé des modifications |
||
| Ligne 2 : | Ligne 2 : | ||
== Généralité == | == Généralité == | ||
Quelques particularités sont à notées concernant PowerShell et les tâches planifiées via le planificateur de tâches. | |||
Lorsqu'une tâche planifiée est programmée pour exécuter un script PowerShell, utiliser les options suivantes : | Lorsqu'une tâche planifiée est programmée pour exécuter un script PowerShell, utiliser les options suivantes : | ||
* programme : <code>powershell.exe</code> | * programme : <code>powershell.exe</code> | ||
* arguments : <code>-File Chemin\fichier</code> | * arguments : <code>-File Chemin\fichier</code> | ||
* commencer dans : | * commencer dans : | ||
== Script PowerShell avec argument == | |||
Pour qu'un script PowerShell avec argument puisse être lancé depuis une tâche planifiée, voici un modèle : | |||
* programme/script : <source inline>C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe</source> ou simplement <source inline>powershell.exe</source> | |||
* arguments : <source inline>-Command "& C:\SauveImap\PurgeFichierAncien.ps1 -chemin 'c:\SauveImap\Archives' -age '30'"</source> | |||
Fichier {{fichier|PurgeFichierAncien.ps1}} | |||
<source> | |||
<# | |||
Nom : PSHTAC010 | |||
Description : suppression des fichiers PDF d'un dossier et plus agé qu'un nombre de jour défini | |||
Usage : renseigner les arguments suivants : | |||
-chemin : chemin des fichiers à traiter ; valeur par défaut "C:\SauveDocAppli\Archives" | |||
-age : age des fichiers ; valeur par défaut "30" | |||
Exemple : pour une tâche planifiée : | |||
* programme : powershell.exe | |||
* arguments : -Command "& C:\SauveDocAppli\PurgeFichierAncien.ps1 -chemin 'C:\SauveDocAppli\Archives' -age '30'" | |||
Auteurs : fylip22 | |||
Version : 1.1 | |||
Révisions : | |||
- 1.0 (10/08/2023) : création du script | |||
- 1.1 (14/08/2023) : modification pour ne traiter que les PDF et ajout des valeurs par défaut | |||
#> | |||
Param( | |||
# Indication que les paramètres suivants sont facultatifs | |||
[Parameter()] | |||
# chemin du dossier à nettoyer ; avec chemin par défaut | |||
[string]$chemin="C:\SauveDocAppli\Archives", | |||
# Age maximum des fichiers à garder (en jour) ; avec valeur par défaut | |||
[int]$age="30" | |||
) | |||
Get-ChildItem $chemin -Filter *.pdf | Where CreationTime -lt (Get-Date).AddDays(-$age) | Remove-Item -Force | |||
</source> | |||
== Liste des tâches planifiées == | == Liste des tâches planifiées == | ||
Version du 13 août 2024 à 16:37
Généralité
Quelques particularités sont à notées concernant PowerShell et les tâches planifiées via le planificateur de tâches.
Lorsqu'une tâche planifiée est programmée pour exécuter un script PowerShell, utiliser les options suivantes :
- programme :
powershell.exe - arguments :
-File Chemin\fichier - commencer dans :
Script PowerShell avec argument
Pour qu'un script PowerShell avec argument puisse être lancé depuis une tâche planifiée, voici un modèle :
- programme/script :
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeou simplementpowershell.exe - arguments :
-Command "& C:\SauveImap\PurgeFichierAncien.ps1 -chemin 'c:\SauveImap\Archives' -age '30'"
Fichier PurgeFichierAncien.ps1
<#
Nom : PSHTAC010
Description : suppression des fichiers PDF d'un dossier et plus agé qu'un nombre de jour défini
Usage : renseigner les arguments suivants :
-chemin : chemin des fichiers à traiter ; valeur par défaut "C:\SauveDocAppli\Archives"
-age : age des fichiers ; valeur par défaut "30"
Exemple : pour une tâche planifiée :
* programme : powershell.exe
* arguments : -Command "& C:\SauveDocAppli\PurgeFichierAncien.ps1 -chemin 'C:\SauveDocAppli\Archives' -age '30'"
Auteurs : fylip22
Version : 1.1
Révisions :
- 1.0 (10/08/2023) : création du script
- 1.1 (14/08/2023) : modification pour ne traiter que les PDF et ajout des valeurs par défaut
#>
Param(
# Indication que les paramètres suivants sont facultatifs
[Parameter()]
# chemin du dossier à nettoyer ; avec chemin par défaut
[string]$chemin="C:\SauveDocAppli\Archives",
# Age maximum des fichiers à garder (en jour) ; avec valeur par défaut
[int]$age="30"
)
Get-ChildItem $chemin -Filter *.pdf | Where CreationTime -lt (Get-Date).AddDays(-$age) | Remove-Item -Force
Liste des tâches planifiées
Liste des tâches planifiées dont le nom commence par "onedrive" :
Get-ScheduledTask -TaskPath \ | Where {$_.TaskName -like "onedrive*"}
Supprimer des tâches planifiées
Suppression des tâches planifiées dont le nom commence par "onedrive" :
Get-ScheduledTask -TaskPath \ | Where {$_.TaskName -like "onedrive*"} | Unregister-ScheduledTask