编写BAT脚本文件

编写bat脚本,其中F:\program\Oracle\VirtualBox为Virtualbox可执行文件所在目录,右键桌面快捷图标可以看到

虚拟机的名字在虚拟机主界面列表中就可以看到

1
2
3
4
5
@ECHO OFF
F:\program\Oracle\VirtualBox\VBoxManage.exe startvm ES1 --type headless
F:\program\Oracle\VirtualBox\VBoxManage.exe startvm ES2 --type headless
F:\program\Oracle\VirtualBox\VBoxManage.exe startvm ES3 --type headless
EXIT

上面脚本是启动了3个虚拟机,根据自己需要改动即可

把Virtualbox.bat拉到 “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup”下。这样就能开机启动了。

遇到问题后自己解决办法

由于路径是 Program Files 有空格键,所以直接这样写是失败的!
后边写成了分批模式就成功

1
2
3
4
d:
cd Program Files
cd Oracle\VirtualBox
VBoxManage.exe startvm Ubuntu --type headless

BAT详细说明

Windows7下安装个linux虚拟机,学习下非常好。

但是每次使用linux的时候,都是打开virtualBox–>启动安装的linux系统–>再用远程桌面(SSH等)连接

每次手动打开比较麻烦,而且linux虚拟机也有窗口,比较冗杂。如果能开机自启,并且后台运行linux虚拟机(没有可见窗口),那就开心了。

找到VirtualBox的安装目录

我的virtualbox安装在 D:virualBox,进入这个目录,你会看到有个VBoxManage.exe文件,没有错,我们就是用它来启动虚拟机的。

怎么启动呢?命令行如下

1
VBoxManage startvm <uuid>|<name> [--type gui|sdl|headless] 

比如我新建的虚拟机叫study,那么

1
D:virualBoxVBoxManage startvm study --type headless 

–type headless:表示后台执行,没有窗口哦

来,我们打开cmd,试下这个命令

提示已经启动了study虚拟机了。

开机自启动

现在看不到窗口了,但是还是需要手动输入命令行启动。如果能开机自启动就好了

1、首选我们要做一个bat脚本:virtualboxtStart.bat

2、里面写入上面的命令:

1
D:virualBoxVBoxManage startvm study --type headless  

3、把virtualboxtStart.bat放到C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup,这个目录下的脚本是开机的时候自动运行的哦

好了,小工告成。重启电脑,你就会发现,Windows7偷偷帮我们启动了study这个虚拟机了。

可以用SSH连接,操作了。

注:也可以在cmd中使用命令行对虚拟机进行状态管理:

1
VBoxManage controlvm <uuid>|<name> pause|resume|reset|poweroff|savestate| 

比如我想关闭:

1
D:virualBoxVBoxManage controlvm study poweroff 

解决bat批处理文件使用路径有空格(试过无效果)

编写批处理文件时,如果文件路径中有空格会无法读取完整路径,这时候可以将有空格的路径用双引号括起来

在start xxx.exe语句中,不能用双引号把整个路径括起来,要选择性的括有空格的那个

很多帖子写的是这样括

start G:\Siemens"NX 12.0”\UGII\ugraf.exe

但是我试了之后发现运行的时候这个双引号连带着里面的文件名都变成了乱码

解决方法是把两边的“\”也括进去

start G:\Siemens”\NX 12.0"UGII\ugraf.exe

这样就ok了


说明:本文是收集参考文档,以方便查看


信息链接:

  1. 如何在Windows 7下实现VirtualBox虚拟机开机后台自启动
  2. 设置virtualbox开机自启动,并启动虚拟机
  3. 解决bat批处理文件使用路径有空格

=================我是分割线=================

欢迎到公众号来唠嗑: