将参数从蝙蝠传递给蝙蝠(环境变量)

时间:2013-04-08 10:51:11

标签: variables parameters batch-file environment

我需要将一些参数从蝙蝠file1.bat传递给另一个蝙蝠file2.bat。问题是@echo %2里面file2.bat显示来自prompt命令的"",因此secondVar中定义的名为file1.bat的变量没有按原样发送,而第一个参数总是发送成功。

我被困在这里因此我不能继续前进      调用file2.bat“aFile”!secondVar! 正在为每个secondVar搜索第二个变量到aFile。

请有人告诉我发生了什么,并给我一些正确的答案。非常感谢你提前!

file2.bat 看起来像:

@echo off
echo %2
Set arg1=%1
echo %arg1%
cscript process.vbs %1>result
more +1  %1|findstr /I /r /b /C:"^T.*=%2">viewout

file1.bat 看起来像:

@echo off & setLocal
SETLOCAL EnableDelayedExpansion
set secondVar=%secondVar%

for /f "tokens=*" %%a in (myFile) do (set secondVar="%%a"
echo !secondVar!
call file2.bat "aFile" !secondVar!
)

1 个答案:

答案 0 :(得分:0)

File1.bat 中,更改

set secondVar="%%a"

set secondVar="%%~a"

首先使用代字号字符删除封闭的双引号......

你也可以使用:set“secondVar = %% ~a”