La gestion des machines virtuelles va essentiellement s’opérer grâce à la famille de commandes « VM ». Ainsi pour démarrer une machine virtuelle, nous utiliserons Start-VM et pour l’arrêt Stop-VM ou Shutdown-VM.
PowerShell, Gestion des machines virtuelles
Exemple 1 : Démarrage d’une machine virtuelle
PS > Start-VM -VM ‘Windows 7 X64’
Cette commande donne l’ordre à la machine virtuelle de démarrer, puis elle retourne un objet de type VM et nous affiche toutes ses propriétés. En regardant la propriété Status, nous savons si l’action a réussi où non. Une autre façon de le savoir est d’aller consulter l’état du dernier travail (job) effectué.
Pour se faire, utilisons la ligne de commandes suivante :
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Completed
StatusString : Terminé
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:27:52
EndTime : 13/09/2010 22:27:53
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846- 2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 100
Progress : 100 %
WasNotifiedOfCancel : False
CmdletName : Stop-VM
PROTipID :
ResultObjectID : 2f96fe4b-101b-49d2-bfde-76db17b9ce71
TargetObjectID : 2f96fe4b-101b-49d2-bfde-76db17b9ce71
TargetObjectType : VM
IsCompleted : True
AreAuditRecordsAvailable : False
AuditRecords : {}
AdditionalMessages : {}
Source :
Target :
ResultObjectType : VM
ResultObjectTypeName : Ordinateur virtuel
ResultName : Windows 7 X64
IsRestartable : False
IsStoppable : False
ID : 97026e63-01fe-4c19-9dad-04512ce39831
MarkedForDeletion : False
IsFullyCached : True
La propriété ErrorInfo ayant la valeur « Success », nous pouvons donc considérer que le travail s’est correctement exécuté. Attention toutefois, il faut bien avoir conscience qu’il faut dissocier le démarrage de la VM du démarrage de l’OS. En effet, la machine pourrait très bien être démarrée et le système d’exploitation « planté ».
Exemple 2 : Arrêt « brutal » d’une machine virtuelle
PS > Stop-VM -VM ‘Windows 7 X64’
Stop-VM a le même effet que si vous débranchiez la prise électrique d’une machine physique. C’est à utiliser en dernier recours, si un arrêt « propre » du système n’a pas d’effet, par exemple.
Exemple 3 : Arrêt « propre » d’une machine virtuelle
PS > Shutdown-VM -VM ‘Windows 7 X64’
Pour que cette commande puisse fonctionner correctement, il faut que des agents soient installés à l’intérieur des VM. Dans le monde Microsoft ces derniers s’appellent « Services d’intégration » et dans le monde VMWare ce sont les « VMWare tools ».
Il est intéressant de noter que cette commande suspend l’exécution de PowerShell tant que la machine n’est pas arrêtée. Pour forcer PowerShell à rendre la main, c’est à dire à continuer l’exécution sans attendre, il faut ajouter le commutateur -RunAsynchronously.
PS > Shutdown-VM -VM ‘Windows 7 X64’ -RunAsynchronously
A présent pour connaître l’état d’avancement de la tâche, il suffit de regarder l’état du dernier travail en cours comme précédemment.
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Running
StatusString : En cours d’exécution
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:59:06
EndTime :
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846-2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 0
Progress : 0 %
WasNotifiedOfCancel : False
CmdletName : Shutdown-VM
…
L’arrêt est toujours en cours. On attend quelques instants puis on interroge à nouveau le travail en cours.
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Completed
StatusString : Terminé
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:59:06
EndTime : 13/09/2010 23:00:13
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846-2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 100
Progress : 100 %
WasNotifiedOfCancel : False
CmdletName : Shutdown-VM
Cette fois, c’est bon, le travail est terminé et il s’est terminé correctement.
Pour aller plus loin sur PowerShell avec les experts @ITPROFR :
Powershell, une ligne de commande qui a su se faire désirer · iTPro.fr
Les 10 éléments clés à connaître pour tirer parti de PowerShell · iTPro.fr
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
- Le trilemme de la souveraineté : le coût caché du cloud qui freine l’IA en Europe
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Semperis : gouverner l’identité à l’ère des agents IA
- Analyse Patch Tuesday Mars 2026
Articles les + lus
Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
À la une de la chaîne Tech
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
