Batch file 在文件中包含输出的curl,并且输出文件名有一个变量

Batch file 在文件中包含输出的curl,并且输出文件名有一个变量,batch-file,variables,curl,Batch File,Variables,Curl,我想创建一个不存在的文件夹。 之后,我想从一个带有登录名和密码的url获取一个文件 但是在我的例子中,curl没有在输出中使用变量 如何创建用于在输出中使用的变量?正确的语法是什么 SET TS=%TIME:=0% 设置DS=%DATE:=0% 设置路径=%CD% 设置日志文件=%path%\%DS:~6,4%\%DS:~3,2%\%DS:~0,2%\%TS:~0,2%%TS:~3,2%%TS:~6,2%\u example.gz 如果不存在%path%\%DS:~6,4%\%DS:~3,2%

我想创建一个不存在的文件夹。 之后,我想从一个带有登录名和密码的url获取一个文件

但是在我的例子中,curl没有在输出中使用变量

如何创建用于在输出中使用的变量?正确的语法是什么

SET TS=%TIME:=0%
设置DS=%DATE:=0%
设置路径=%CD%
设置日志文件=%path%\%DS:~6,4%\%DS:~3,2%\%DS:~0,2%\%TS:~0,2%%TS:~3,2%%TS:~6,2%\u example.gz
如果不存在%path%\%DS:~6,4%\%DS:~3,2%\%DS:~0,2%mkdir%DS:~6,4%\%DS:~3,2%\%DS:~0,2%

curl-u loginname:pwhttp://example.url.com/example.gz >@%logfile%
以下是我在评论中提供的建议的答案:

@Echo关闭
设置“日志文件=”
对于/F“Tokens=1-6Delims=/:”(“^”“%”中的%%A\uuuuu AppDir\uuuuuuu%robocy.exe)/NJH/L“\\\\\\”Null^”
)如果未定义日志文件,则不要设置“日志文件=%~dp0%%A\u%%B\u%%C\%D%%E%%F\u example.gz”
如果不存在“%logfile%\”MD“%logfile%”
“P:\athTo\CURL.exe”-u loginname:pwhttp://example.url.com/example.gz>%logfile%

如果
CURL.exe
与位于相同的位置,则可以将
p:\athTo\
更改为
%~dp0
,如果它位于当前目录中,请将其替换为
%\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。在这种情况下,您甚至不需要设置它,如果您确实想要当前目录而不是保存脚本本身的目录,您可以直接使用
%CD%
。如果您打算为未在当前用户配置文件下运行的任何人运行,您的
%date%
%time%
变量不能保证提供相同的输出。如果是这种情况,则需要使用非用户/区域设置依赖的方法。最后,请使用双引号,并从输出文件名中删除前缀
@
字符。嘿,@Tibor,每篇文章都应该用英语。您是否将
%cd%
%path%
混淆了?“%logfile%”有效