如何启动/恢复Oracle VirtualBox并在暂停后立即启动?

LPC芯片

我想启动或恢复虚拟机,并且一旦我可以控制鼠标将其置于暂停模式(host + p)。

这样,我可以启动虚拟机和其他任务,但没有虚拟机消耗系统资源,但是我可以通过取消暂停来随意使用该虚拟机。与使用Firefox一样,将其启动到内存中,以便在需要时可用。

我正在使用Windows。

LPC芯片

Oracle VirtualBox可以完全通过命令行进行管理,因此可以编写一个执行此操作的脚本。

例如Start VM.cmd创建一个批处理文件,并将以下内容放入其中:

@echo off

cd /d "C:\Program Files\Oracle\VirtualBox"

start "" VirtualBox.exe --startvm "Virtual Machine 1"
set var=""
echo Waiting for the virtualbox to complete its startup routine.
:loop
for /f "delims=" %%A in ('vboxmanage list runningvms') do set "var=%%A"
set var2=%var:"=%
if "%var2%"=="Virtual Machine 1 {d325eda7-8abc-4083-9bc5-d41b3acf0ba5}" goto next
goto loop

:next

VBoxManage controlvm "Virtual Machine 1" pause

将第二行更改为您安装VirtualBox的路径。此外,还要更改虚拟机的名称和guid,以使其与脚本中各个位置的虚拟机相匹配。

您可以通过打开命令提示符并键入以下命令来执行此操作:

C:\Program Files\Oracle\VirtualBox\vboxmanage list vms

复制整个行并将其粘贴到批处理文件中,然后从虚拟机名称中删除引号(“)。

例如,"Virtual Machine 1" {d325eda7-8abc-4083-9bc5-d41b3acf0ba5}变为Virtual Machine 1 {d325eda7-8abc-4083-9bc5-d41b3acf0ba5}

简短的教育故事

我在此脚本中做了几件事,并且我将解释这些陷阱以及为什么要这样做。

我使用start启动虚拟机,以确保在启动VM时脚本继续运行。如果没有,脚本将等待VM终止,然后再继续。

下一步Iset var=""如果您通过双击资源管理器中的图标来启动脚本,从技术上讲这不是必需的,但是如果您使用命令提示符并多次运行它,则它将仅在第一次运行。

接下来,我创建一个循环。在循环中,我查询正在运行的VM。如果我感兴趣的VM确实正在运行,我们将打破循环。现在,我必须在这里执行一个技巧才能完成这项工作。由于vm返回的内容中包含一个“,因此它会认为”早先在if语句中出现,并导致脚本无法正常工作。为了解决这个问题,我从%var%中删除了所有“并将其存储为var2。这是必需的,因为如果没有虚拟机在运行,%var%不会更新。我会使用set var=%var:"=%它一次,然后在下一个循环中断时使用脚本,并以错误终止。

最终,在VM运行之后,它会进行完全匹配并中断循环。然后,将pause命令发送到VM,它将尽快暂停VM。它不是即时的,但是延迟是最小的,并且鉴于运行vms的vboxmanage列表返回它,系统知道它将接受该命令。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从陷阱启动Vim并在挂起后仍能恢复它?

来自分类Dev

从暂停恢复后重新启动urfkill

来自分类Dev

javascript“ await”是否会立即暂停执行中的操作,并在解决诺言后立即恢复异步功能?

来自分类Dev

如何恢复启动画面

来自分类Dev

如何恢复启动画面

来自分类Dev

如何启动进入恢复模式?

来自分类Dev

如何恢复无法启动的系统?

来自分类Dev

暂停/恢复后,如何在Ubuntu 16.04上自动启动和使用openvpn cli?

来自分类Dev

GIMP启动后立即崩溃

来自分类Dev

Wildfly在启动后立即停止

来自分类Dev

TypeDoc在启动后立即崩溃

来自分类Dev

GIMP启动后立即崩溃

来自分类Dev

Konsole在启动后立即崩溃

来自分类Dev

oracle如何启动程序?

来自分类Dev

VirtualBox在首次启动时暂停

来自分类Dev

如何从读取的DMA启动错误中恢复?

来自分类Dev

如何从读取的DMA启动错误中恢复?

来自分类Dev

如何使恢复的Windows分区可启动?

来自分类Dev

终端在启动时崩溃。如何恢复?

来自分类Dev

BCD损坏后如何修复或安装启动修复/系统恢复?

来自分类Dev

重新启动X后如何恢复挂起的进程?

来自分类Dev

在 Ubuntu 20.04 中从休眠状态恢复后如何启动服务?

来自分类Dev

启动更多进程并在启动后立即获取每个进程的窗口句柄并且没有睡眠?

来自分类Dev

恢复升级到16.04-从对话框窗口启动Shell后如何恢复

来自分类Dev

系统启动后,如何自动启动和恢复Bittorrent中的任何下载?

来自分类Dev

系统启动后,如何自动启动和恢复Bittorrent中的任何下载?

来自分类Dev

暂停后启动Windows功能更新

来自分类Dev

KDE Connect:暂停后无法启动媒体

来自分类Dev

重新启动后,Sprite Kit暂停/恢复场景不起作用

Related 相关文章

  1. 1

    如何从陷阱启动Vim并在挂起后仍能恢复它?

  2. 2

    从暂停恢复后重新启动urfkill

  3. 3

    javascript“ await”是否会立即暂停执行中的操作,并在解决诺言后立即恢复异步功能?

  4. 4

    如何恢复启动画面

  5. 5

    如何恢复启动画面

  6. 6

    如何启动进入恢复模式?

  7. 7

    如何恢复无法启动的系统?

  8. 8

    暂停/恢复后,如何在Ubuntu 16.04上自动启动和使用openvpn cli?

  9. 9

    GIMP启动后立即崩溃

  10. 10

    Wildfly在启动后立即停止

  11. 11

    TypeDoc在启动后立即崩溃

  12. 12

    GIMP启动后立即崩溃

  13. 13

    Konsole在启动后立即崩溃

  14. 14

    oracle如何启动程序?

  15. 15

    VirtualBox在首次启动时暂停

  16. 16

    如何从读取的DMA启动错误中恢复?

  17. 17

    如何从读取的DMA启动错误中恢复?

  18. 18

    如何使恢复的Windows分区可启动?

  19. 19

    终端在启动时崩溃。如何恢复?

  20. 20

    BCD损坏后如何修复或安装启动修复/系统恢复?

  21. 21

    重新启动X后如何恢复挂起的进程?

  22. 22

    在 Ubuntu 20.04 中从休眠状态恢复后如何启动服务?

  23. 23

    启动更多进程并在启动后立即获取每个进程的窗口句柄并且没有睡眠?

  24. 24

    恢复升级到16.04-从对话框窗口启动Shell后如何恢复

  25. 25

    系统启动后,如何自动启动和恢复Bittorrent中的任何下载?

  26. 26

    系统启动后,如何自动启动和恢复Bittorrent中的任何下载?

  27. 27

    暂停后启动Windows功能更新

  28. 28

    KDE Connect:暂停后无法启动媒体

  29. 29

    重新启动后,Sprite Kit暂停/恢复场景不起作用

热门标签

归档