相关疑难解决方法(0)

如何在.BAT文件中运行多个.BAT文件

我正在尝试让我commit-build.bat执行其他.BAT文件作为构建过程的一部分.

内容commit-build.bat:

"msbuild.bat"
"unit-tests.bat"
"deploy.bat"
Run Code Online (Sandbox Code Playgroud)

这看起来很简单,但commit-build.bat只执行list(msbuild.bat)中的第一项.

我已经分别运行每个文件没有问题.

cmd batch-file

654
推荐指数
14
解决办法
79万
查看次数

为什么调用嵌套的批处理文件而不在行前面"调用"退出父批处理文件?

我理解如何使用该call命令从父文件中调用嵌套批处理文件,因为有大量资源:

但是,我不明白为什么从另一个批处理文件调用终止父代.

对于一个不那么抽象的例子,假设我有一个批处理文件,它将单独的批处理文件"链接"在一起,而我错误地没有call在每行前面添加:

foo.bat
bar.bat
Run Code Online (Sandbox Code Playgroud)

这只会执行foo.bat然后退出.要正确执行这两个命令,我必须在每个语句之前添加前调用:

call foo.bat
call bar.bat
Run Code Online (Sandbox Code Playgroud)

为什么第一个功能仍然存在?为什么没有改变?我注意到call这是在20世纪80年代后期发布的MS-DOS 3.3中引入的,所以这个功能仍然在这里用于反向兼容吗?

我无法想到它的任何(实际)用法,但也许我已经习惯了"新的"编程技术.

cmd batch-file

31
推荐指数
2
解决办法
2万
查看次数

Bat脚本意外退出

我有以下蝙蝠脚本:

@echo off
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_32
set JRE_HOME=C:\Program Files\Java\jdk1.6.0_32\jre
set Path=%JAVA_HOME%\bin;%Path%

cd C:\project
mvn validate compile package db-migration:migrate -DskipTests
REM script exits here, the second line never been executed
java  -jar target/compiled_tar.jar
Run Code Online (Sandbox Code Playgroud)

最后一行从未执行过."mvn ..."成功完成,created_tar.jar创建,输出为:

[INFO] BUILD SUCCESS
Run Code Online (Sandbox Code Playgroud)

如果我在最后一行和上一行之间插入PAUSE命令,PAUSE也从未发生过.为什么?

batch-file maven

3
推荐指数
1
解决办法
2407
查看次数

.bat脚本在执行AWS Auto Scaling命令之前终止

我对Amazon Cloud Auto Scaling(以及所有AWS)都很陌生.

我目前正在尝试编写一个自动创建启动配置然后自动缩放器的.bat脚本.目的是为了一个大约一周前由同事建立的图像.

我遇到的问题是,当我运行脚本时,不执行任何超过启动配置命令的命令.

代码在这里:

echo Beginning Auto Scale Up Process

REM Create a launch config
as-create-launch-config --image-id ami-xxxxxxx --instance-type t1.micro --user-data "Created by Launch Config reportingServerScaleUp-lc" --launch-config reportingServerScaleUp-lc 

echo Timer Complete
Run Code Online (Sandbox Code Playgroud)

我正在寻找帮助我调试此问题的建议.或者如何解决它的建议.在"echo Timer Complete"之后,我有一个命令来创建一个自动缩放器.但是,甚至没有执行"echo Timer Complete".控制台确实返回,表明虽然创建了启动配置:)

此外,当我按顺序将每个命令输入命令行时,每个命令都完美地执行.与自动缩放组一样创建启动配置.

batch-file amazon-web-services autoscaling

3
推荐指数
1
解决办法
853
查看次数

bat脚本只运行第一行?

当我将下面的行复制/粘贴到cmd窗口时,它会毫无问题地执行.

"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"
msbuild proj\projsln /p:Configuration=Debug 
proj\proj\bin\Debug\proj.exe my args
Run Code Online (Sandbox Code Playgroud)

但是,当我将其保存为DoStuff.bat时,我得到下面的消息(这是执行vcvars32.bat的文本),然后没有别的.它不构建我的项目,显然不运行新构建的可执行文件.

为什么不呢,我如何让它运行所有三个命令?

>"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"
Setting environment for using Microsoft Visual Studio 2010 x86 tools.
Run Code Online (Sandbox Code Playgroud)

windows batch-file

1
推荐指数
1
解决办法
3597
查看次数