logo_mini_comments

Sans partage, la connaissance n'est rien !

Fil de navigation

Si vous disposez d'un grand nombre de serveurs dans votre parc, il peut-être intéressant de pouvoir récupérer toutes les tâches planifiées qui s’exécutent sur vos serveurs distants. Ici nous allons voir la procédure à suivre afin d'exporter ces informations dans un fichier .csv.

 

Avec l'outil Windows Schtasks :

SchTasks.exe effectue les mêmes opérations que les Tâches planifiées dans le panneau de configuration de Windows.

 

One-Liners :

#OL01 - Exporter les tâches planifiées d'un serveur en local dans un fichier .csv

schtasks.exe /Query /FO CSV /V | ConvertFrom-Csv | Export-Csv -Path "C:\Temp\Tasks.csv" -NoTypeInformation -Delimiter ";" -encoding UTF8

 

#OL02 - Exporter les tâches planifiées de serveurs distants (stockés dans un fichier texte) dans un fichier .csv

(Get-Content -Path "C:\Temp\Servers.txt") | ForEach-Object { Schtasks.exe /Query /s $_ /V /FO CSV } | ConvertFrom-CSV | Export-CSV -Path "C:\Temp\Tasks-Servers.csv" -NoTypeInformation -Delimiter ";" -encoding UTF8

 

Exemple du contenu du fichier Servers.txt avec les hostnames des serveurs :

Server1
Server2
Server3

 

Problème avec l'outil Windows Schtasks :

La commande Schtasks et ses paramètres génèrent des problèmes d'affichage lorsque l'on souhaite exporter les données. En effet, des lignes sont répétées avec des en-têtes de colonnes vide.

 

Avec un script PowerShell :

Cliquer ici pour télécharger le script.

 

One-Liners :

#OL01 - Exporter les tâches planifiées d'un serveur en local dans un fichier .csv

.\Get-ScheduledTask.ps1 | Export-Csv -Path "C:\Temp\Tasks.csv" -NoTypeInformation -Delimiter ";" -encoding UTF8

 

#OL02 - Exporter les tâches planifiées de serveurs distants (stockés dans un fichier texte) dans un fichier .csv

(Get-Content -Path "C:\Temp\Servers.txt") | .\Get-ScheduledTask.ps1 | Export-Csv -Path "C:\Temp\Tasks-Servers.csv" -NoTypeInformation -Delimiter ";" -encoding UTF8

 

Exemple du contenu du fichier Servers.txt avec les hostnames des serveurs :

Server1
Server2
Server3