vboxmanage 运行 一个 bat 文件,但没有看到参数
vboxmanage running a bat file, but doesn't see arguments
我有一个 Virtualbox 实例 运行正在 Windows10,并且 运行正在从 VirtualBox 外部执行以下命令:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
--nologo guestcontrol "Win10_x64" run
--exe "\VBOXSVR\codemodel\VirtualBox_RunInstaller.bat"
--username user --password pass
--wait-stdout
-- VERSION5
我试图传递给 VirtualBox_RunInstaller
bat 文件的参数是 VERSION5
,但 %1
始终为空。我可以看到这一点,因为当 set version=%1
为 运行 时,它会打印出 set version=
。所以它成功地 运行 处理了批处理文件,但是没有参数传递给它。
我的语法有误吗?在这一点上,我已经尝试了几种变体,但还没有做对。
如果我理解 this link 正确,要解决的 --exe 是 cmd.exe 并且批处理文件必须是第一个参数(到 exe)
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" ^
--nologo guestcontrol "Win10_x64" run ^
--exe cmd.exe ^
--username user --password pass ^
--wait-stdout ^
-- "\VBOXSVR\codemodel\VirtualBox_RunInstaller.bat" VERSION5
我有一个 Virtualbox 实例 运行正在 Windows10,并且 运行正在从 VirtualBox 外部执行以下命令:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe"
--nologo guestcontrol "Win10_x64" run
--exe "\VBOXSVR\codemodel\VirtualBox_RunInstaller.bat"
--username user --password pass
--wait-stdout
-- VERSION5
我试图传递给 VirtualBox_RunInstaller
bat 文件的参数是 VERSION5
,但 %1
始终为空。我可以看到这一点,因为当 set version=%1
为 运行 时,它会打印出 set version=
。所以它成功地 运行 处理了批处理文件,但是没有参数传递给它。
我的语法有误吗?在这一点上,我已经尝试了几种变体,但还没有做对。
如果我理解 this link 正确,要解决的 --exe 是 cmd.exe 并且批处理文件必须是第一个参数(到 exe)
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" ^
--nologo guestcontrol "Win10_x64" run ^
--exe cmd.exe ^
--username user --password pass ^
--wait-stdout ^
-- "\VBOXSVR\codemodel\VirtualBox_RunInstaller.bat" VERSION5