如何通过命令行判断虚拟机是否启动?

如何通过命令行判断虚拟机是否启动?

如何从命令行判断特定虚拟机是否已启动并正在运行?

答案1

vboxmanage list vms

不再会显示虚拟机是否正在运行。它还会列出未运行的虚拟机。

vboxmanage showvminfo "your_vm_name" | grep -c "running (since"

如果正在运行则返回 1,否则返回 0。

答案2

如果您想要列出所有虚拟机以查看它们是否正在运行,请使用以下命令:

vboxmanage list vms --long | grep -e "Name:" -e "State:"

这将在一行中显示虚拟机名称,并在下一行中显示其状态,例如

Name:            windows10pro
State:           running (since 2017-06-09T09:16:46.593000000)
Name:            ubuntu16LTS
State:           powered off (since 2017-02-09T19:11:33.000000000)
Name:            zammad
State:           running (since 2017-06-09T09:08:13.871000000)

答案3

此命令输出正在运行的虚拟机列表(在 Virtualbox 5.1 上测试)

VBoxManage list runningvms

要知道虚拟机是否正在运行,可以使用以下命令(如果正在运行则返回 1,否则返回 0):

VBoxManage list runningvms | sed -r 's/^"(.*)".*$/\1/' | grep 'VM Name' | wc -l

答案4

我相信你可以使用以下方式获取此信息垂直框管理(VirtualBox 的命令行界面)。

您可以使用showvminfo 命令显示有关特定虚拟机的信息。

这与VBoxManage 列表虚拟机将显示所有虚拟机。

相关内容