Faire une capture d’écran d’une VM VirtualBox en ligne de commande
Il est utile quand on réalise un tutorial, quand on veut soulever un bogue, de faire une copie d’écran. Mais quand le système est dans une machine virtuelle sous Virtualbox, comment faire ?
L’outil principale pour contrôler VirtualBox en ligne de commande est VBoxManage.
VirtualBox : Linux
Sous Linux, la ligne de commande principale est :
# controlvm : subcommand # <Nom de la VM> : VM à controler # screenshotpng : prend une copie d'écran de la VM et le sauve au format PNG $/usr/bin/vboxmanage controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>
De plus, j’ai créé un script qui, toutes les 100 secondes, fait un capture d’écran :
#!/bin/sh count=1 while [ true ] do /usr/bin/vboxmanage controlvm <Nom de la VM> screenshotpng ~/Screenshot_$count.png (( count++ )) sleep 100 done
VirtualBox : Windows
Sous Windows, la ligne de commande principale est :
# controlvm : subcommand # <Nom de la VM> : VM à controler # screenshotpng : prend une copie d'écran de la VM et le sauve au format PNG "<Path VirtualBox>\VBoxManage.exe" controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>
De plus, j’ai créé un script qui, à chaque appui sur une touche ou toutes les 1000 secondes, fait une capture d’écran :
@echo off FOR /L %%I IN (1, 1, 1000) DO ( if !i! lss 1000 ( if !i! lss 100 ( if !i! lss 10 ( "<Path VirtualBox>\VBoxManage.exe" controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>000%%I.png ) else ( "<Path VirtualBox>\VBoxManage.exe" controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>00%%I.png ) ) else ( "<Path VirtualBox>\VBoxManage.exe" controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>0%%I.png ) ) else ( "<Path VirtualBox>\VBoxManage.exe" controlvm <Nom de la VM> screenshotpng <Fichier Screenshot>%%I.png ) TIMEOUT /T 1000 )
Liens :
Ajouter un commentaire