Batch file 流浪者上升或供给(如果已经上升)
我需要创建一个简单的脚本(Windows.bat),它将提供或设置一个框 没有太多关于.bat文件的经验,因此这是我到目前为止的经验: 编辑感谢格雷格·休吉尔Batch file 流浪者上升或供给(如果已经上升),batch-file,vagrant,Batch File,Vagrant,我需要创建一个简单的脚本(Windows.bat),它将提供或设置一个框 没有太多关于.bat文件的经验,因此这是我到目前为止的经验: 编辑感谢格雷格·休吉尔 cd C:\vagrant-box\ call vagrant-up.bat if errorlevel 1 call vagrant-provision.bat 脚本中的.bat文件called只包含一行:vagrant up和vagrant reload 当“流浪者”框关闭时,流浪者向上成功运行。当启动时,我在vagrant u
cd C:\vagrant-box\
call vagrant-up.bat
if errorlevel 1 call vagrant-provision.bat
脚本中的.bat文件call
ed只包含一行:vagrant up
和vagrant reload
当“流浪者”框关闭时,流浪者向上成功运行。当启动时,我在vagrant up中遇到了一个错误(我希望是这样),但是整个批处理文件都死在那里了<代码>错误级别似乎没有任何作用
如果有差异,这里是错误
Bringing machine 'default' up with 'virtualbox' provider...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["list", "hostonlyifs"]
Stderr: VBoxManage.exe: error: Failed to create the VirtualBox object!
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extend)
VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.
我想强调的是,我并不关心错误本身。当盒子不运行时,它工作,所以它很好。我只想捕获或忽略它,然后移动到下一个命令。
vagrant up
即使机器已经运行,也会以代码0退出
但您不必担心退出代码,只需运行:
vagrant provision && vagrant up
你应该涵盖这两种情况。如果客人不在运行,
流浪者供应
将正常失败,流浪者升级
将成功,反之亦然。请发布你的流浪者升级.bat
此外,请尝试以下方法之一:
vagrant up--debug
和/或
VAGRANT\u LOG=debug VAGRANT
获取有关COM/VBox问题的更多详细信息。我已删除我的答案,因为它不再回答您编辑的问题,而且也无法解决您的问题。您为什么需要调用它?
启动有什么问题
command@GregHewgill嗯,无论如何,谢谢。如果不是一个确切的答案,那也是很有帮助的。jist是:“if errorlevel 0
的计算结果为true
如果errorlevel
大于或等于0,那么将其更改为if errorlevel 1
”@monarcraft什么启动
命令?我不知道vagrant start,它是windows批处理命令吗?如果是这样,是否允许我检查errorlevel
以分支命令?根据您的描述,如果框已打开,则vagrant
似乎没有终止。如果在“漫游”框打开时直接从提示符执行vagrant up
,会发生什么情况?如果盒子打开,是否会加载vagrant
可执行文件?