0

file1.batバットから別のバットにいくつかのパラメーターを渡す必要がありますfile2.bat。問題は、@echo %2内部がプロンプト コマンドから表示されるため、最初の引数は常に正常に送信されますが、内部で定義された名前の変数file2.batが本来のように送信されないことです。""secondVarfile1.bat

ここで立ち往生しているため、先に進むことができません。呼び出しのゴール file2.bat "aFile" !secondVar! 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!
)
4

1 に答える 1

0

File1.bat、変更

set secondVar="%%a"

set secondVar="%%~a"

チルダ文字を使用すると、最初に二重引用符が削除されます...

次を使用することもできます: set "secondVar=%%~a"

于 2013-04-08T14:03:21.043 に答える