我有一个vbs文件,它将3个参数传递给test.bat。
参数如下
test.bat "zz\zz\xyz" "Messagename" "Link"
批次代码是
@ECHO OFF
Echo %1
Echo %2
Echo %3
H:
cd "%1"
SET i=1
for %%f in (Plaintext*.xml) do call :CURL "%%f"
GOTO DONE
:CURL
Echo Success
PAUSE:
curl -X POST --insecure --data-urlencode xmlInput@Plaintext%i%.xml "%2" >>"%3" 2>&1
PAUSE:
set /A i+=1
:DONE
PAUSE:
问题: 由于参数未正确传递,curl命令失败。但是当在ECHO中捕获参数时,一切看起来都没问题。不知道问题出在哪里。你能帮忙吗?
答案 0 :(得分:1)
您只是将文件名传递给:CURL函数。您还需要传递其他参数。
for %%f in (Plaintext*.xml) do call :CURL "%%f" "%~2" "%~3"
Goto Done
:CURL
Echo Success
Pause
curl -X POST --insecure --data-urlencode xmlInput@%~1 "%~2" >>"%~3" 2>&1