如何编写一个打开msys shell的批处理文件,然后在shell中运行命令?

时间:2019-06-13 19:12:01

标签: shell batch-file ffmpeg msys

我正在尝试在Windows 10上自动化构建ffmpeg的过程。我在这里遵循指南:https://trac.ffmpeg.org/wiki/CompilationGuide/MSVC

当我手动执行所有操作时,一切正常,但是我想编写一个可以运行以自动完成整个过程的批处理文件。

构建需要我设置Visual Studio环境和MSYS环境。这是我遇到麻烦的地方,因为运行MSYS环境会打开一个新的shell。我想在MSYS Shell打开后将configure / make / make install命令传递给它。

我在这里尝试过该解决方案:How to open a new shell in cmd,then run script in a new shell?

他们遇到的问题看起来与我的相似,但是在那里发布的解决方案对我而言不起作用。

这是当前的蝙蝠文件:

call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat"
call "C:\workspace\windows\mingw-get\msys\1.0\msys.bat" start cmd.exe /k bscript
pause

和bscript:

./configure --enable-shared --toolchain=msvc --arch=amd64
make
make install

我尝试了各种变化,例如:

call "C:\workspace\windows\mingw-get\msys\1.0\msys.bat" /k bscript
call "C:\workspace\windows\mingw-get\msys\1.0\msys.bat" bscript
start "C:\workspace\windows\mingw-get\msys\1.0\msys.bat" /k bscript
start "C:\workspace\windows\mingw-get\msys\1.0\msys.bat" bscript

我还尝试过将bscript代码保留在原始批处理文件中。

configure / make命令将在原始cmd窗口,新的cmd窗口中运行,或者根本不运行。

有没有办法像这样将命令传递给MSYS shell?

0 个答案:

没有答案