我正在尝试使用批处理脚本在Windows计算机上自动执行ruby应用程序部署。
除了以下几行外,一切都很花哨:
gem install bundler
如果我手动输入,一切顺利。但是,如果我使用批处理脚本,则一旦安装完成,该进程就会被终止。这就是我正在使用的:
pause
gem install bundler --no-ri --no-rdoc
pause
我尝试过-f开关和所有文档;似乎没有什么能阻止窗户被杀死。我需要保持活动的过程,所以我可以捆绑安装。知道为什么会这样,以及我如何在安装后保持活着?
答案 0 :(得分:6)
gem
是一个批处理文件(gem.bat
)。当您从另一个批处理文件调用批处理文件时,它正在将控制转移给它而不是恢复。
您应该尝试使用CALL
:
调用第二个批处理文件 CALL命令将启动新的批处理文件上下文以及任何指定的参数。 到达第二个批处理文件的末尾(或者如果使用EXIT),控件将返回 在最初的CALL声明之后。
此处的文档: http://ss64.com/nt/call.html
您也可以通过执行ruby -S gem ...
来避免批处理文件,因为gem
上有gem.bat
(无扩展名)文件,所以{{1}}更详细并且可以正常工作。
希望有所帮助。