批处理脚本运行多个wget命令

我正在尝试创build一个具有多个包含站点凭据的wget命令来下载文件的脚本。 如果我在命令提示符下单独运行wget命令,则该文件可以正确下载。

如果我创build一个包含多个wget命令的批处理脚本,则不会正确下载这些文件。 我不擅长脚本编写,也没有find一个解决scheme。 可以在batch file中运行多个wget命令吗?

这是我的批处理脚本的一个例子。

q@echo off FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET mm=%%B FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET dd=%%B FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET yyyy=%%B SET date=%yyyy%%mm%%dd% wget -v --http-user="username" --http-password=password "http://server/dira/file:format=PDF" -O "C:\test\%date%file.pdf" wget -v --http-user="username" --http-password=password "http://server/dirb/file2:format=PDF" -O "C:\test\%date%file.pdf" 

如果您知道要从您下载的URL,可以将下载文件或URL存储在文本文件中,然后使用wget -i选项

这个超级用户发布的问题也可以帮助你

我会使用PowerShell。

 #Feel free to modify date format via google search $dateString = Get-Date -f MM-dd-yy $client = New-Object System.Net.Webclient $client.Credentials = New-Object System.Net.NetworkCredential("user","pass") "File1.pdf","File2.pdf","file3.zip" | % { $path = "http://somesite.com/files/" + $_ $fileName = "C:\downloads\" + ($_).Replace(".zip",($dateString + ".zip")) $client.DownloadFile($path,$fileName) } 

如果想用wget下载多个文件,最好的办法就是在每一行的开头添加“start”。 喜欢:

 start wget -v --http-user="username" --http-password=password "http://server/dira/file:format=PDF" -O "C:\test\%date%file.pdf 

如果想避免每一行打开一个新的cmd窗口,使用/ B选项。 喜欢:

 start /B wget -v --http-user="username" --http-password=password "http://server/dira/file:format=PDF" -O "C:\test\%date%file.pdf