bat 文件多条命令的执行

2024-11-01 15:35:18
推荐回答(2个)
回答(1):

下面这样会把所有输出文件写到批处理所在路径。

mvn eclipse:eclipse>%~dp1.txt
cd ../uniframework
mvn eclipse:eclipse>%~dp2.txt
cd ../unibizibe
mvn eclipse:eclipse>%~dp3.txt
cd ../unilaputa
mvn eclipse:eclipse>%~dp4.txt

如果还不行的话,把第一行echo off删除,最后加pause
运行后看看提示信息,需要的话粘贴上来帮你分析分析。

回答(2):

楼上的代码是错误的

@echo off
set a=%~dp0
mvn eclipse:eclipse>%a%1.txt
cd ../uniframework
mvn eclipse:eclipse>%a%2.txt
cd ../unibizibe
mvn eclipse:eclipse>%a%3.txt
cd ../unilaputa
mvn eclipse:eclipse>%a%4.txt

这个如果不行的话,问题可能就出在cd命令上,
如果是这样,可以用下面这个

pushd 和cd用处差不多,但是pushd还可以指定盘符,更方便

@echo off
set a=%~dp0
mvn eclipse:eclipse>%a%1.txt
pushd ../uniframework
mvn eclipse:eclipse>%a%2.txt
pushd ../unibizibe
mvn eclipse:eclipse>%a%3.txt
pushd ../unilaputa
mvn eclipse:eclipse>%a%4.txt