Ces scripts peuvent être exécutés en mode interactif mais dans le cadre de l’administration, il est souvent indispensable de mémoriser dans un premier temps les commandes utilisées au sein d’un fichier. La mémorisation d’un script Powershell se fait dans un fichier texte ayant une extension de type .ps1.
Automatisation des scripts
Ce fichier script peut alors être exécuté depuis l’environnement interactif Powershell, tout comme un fichier de type .bat au sein de l’interpréteur de commandes command.com. Il n’est pas possible d’exécuter un fichier .ps1 directement depuis l’environnement Windows, il faut lancer en premier lieu l’environnement Powershell avec les extensions Powershell pour Exchange puis indique ensuite le fichier .ps1 qui sera exécuté dans cet environnement.
Pour automatiser les étapes de chargement des environnements requis, il est possible d’utiliser un fichier .bat qui contiendra alors la commande suivante (en adaptant bien sur les différents chemins à votre environnement) :
C:\WINDOWS\system32\WindowsPowerShell\v1.0\PowerShell.exe
-PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell. psc1" -command ". ‘C:\Scripts\monscript.ps1’".
Cette syntaxe pourra aussi être utilisée dans le cadre de la mise en place de scripts planifiés au sein du planificateur de tâches de Windows (Scheduler). Cette approche permet par exemple de générer directement des rapports formatés en HTML qui seront alors mis automatiquement sur un répertoire publié par un serveur Web par exemple.
Exemple de script avec mise en forme directement vers une page Web
# Type in a PowerShell script here
# and finish it by either get- cmdlet or write-output
$a = "<style>"
$a = $a + "BODY{background-color:peachpuff;}"
$a = $a + "TABLE{border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}"
$a = $a + "TH{border-width: 1px;padding: 10px;border-style: solid;border-color: black;background-color:thistle}"
$a = $a + "TD{border-width: 1px;padding: 10px;border-style: solid;border-color: black;background-color:PaleGoldenrod}"
$a = $a + "</style>"
Get-MailboxDatabase -status|Select storageGroupname,*fullback* |
convertto-html -head $a –body "<H2>Sauvegarde</H2>" |
out-file c:\scripts\backupstate.htm
Invoke-Expression c:\scripts\backupstate.htm
L’exécution de ce script est illustrée dans la figure 3.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Data streaming : le nouveau socle stratégique de l’IA en entreprise
- Ransomware en santé : la double extorsion fait exploser la facture en Europe
- Les fuites de données explosent en France, désormais pays le plus touché d’Europe
- L’IA accélère les attaques et expose les identités non gouvernées
Articles les + lus
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
À la une de la chaîne Tech
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
