我使用存储在.bat文件中的cURL命令。
我想在命令中实现变量,当我调用命令执行.bat文件时,该变量将接收值。
任何人都可以帮助理解以下语法:
这是我的cURL命令(粗体部分应该是变量):
curl -k --user "usercode:" -d source="https://secure.4log.com/**431032**" https://api.pdfshift.io/v2/convert/ -d sandbox=true --output C:\Users\administrator\Desktop\**testpdf11**.pdf
答案 0 :(得分:1)
如果要发送参数,则只需使用:
curl %1 %2 %3
每个数字值定义批处理后单词的位置。
作为一个简单的示例,如果您只运行以下内容,就可以运行:
mybatch.bat 1234 5678
1234
将被视为%1
,而5678
将是%2,您将得到:
source="https://secure.4log.com/%1" C:\Users\administrator\Desktop\%2.pdf
导致:
source="https://secure.4log.com/1234" C:\Users\administrator\Desktop\5678.pdf
如果您打算使用带空格的参数或任何带引号的文本,则应该使用%~1
和%~2
,因为这样会为您删除引号。
答案 1 :(得分:1)
批处理文件的参数由%1
引用,第一个引用,%2
引用第二个,依此类推,直到%9
,这将使您执行命令:
curl -k --user "usercode:" -d source="https://secure.4log.com/%~1" https://api.pdfshift.io/v2/convert/ -d sandbox=true --output C:\Users\administrator\Desktop\%~2.pdf
注意:使用%~1
删除周围的引号(如果没有,则无效)
您可能想在使用以下命令之前检查是否至少有两个参数: :
if "%~2"=="" (echo you need two parameters & goto :eof )
(甚至可能添加一些真实性测试)