如何获取批处理文件以从 URL 下载文件

如何获取批处理文件以从 URL 下载文件

我已经尝试了两天,试图找到一种可行的方法。我一直在尝试制作一个批处理文件,从链接下载文件。

我尝试过 powershell 脚本和invoke-webquest 以及这些疯狂的长达四段的下载脚本,但它们对我来说不起作用。

我希望得到一些帮助,因为我有点沮丧,但只是想知道是否有人有其他建议,或者是否有其他方法来使用这些脚本。

答案1

我们在这篇文章中缺少一些信息来构建正确的答案。

无论如何,Powershell 在这里都会提供很大帮助。

Powershell 只需一行代码即可完成此操作(如果您想在这里进行更进一步的操作,可以使用更多代码)。

因为我不知道您要下载的文件的 URL,所以我将使用 Chrome 作为示例,并将文件保存到您的用户配置文件中的下载文件夹中。

Chrome 的 URL 是:https://www.google.com/intl/en_us/chrome/

单行脚本如下:

Invoke-WebRequest -uri "https://www.google.com/intl/en_us/chrome" -OutFile "$env:userprofile\Downloads\ChromeSetup.exe"

如果你想让它更花哨一点,你可以编写如下脚本:

在此示例中,我将使用 Notepad++。

$DownloadUrl = "https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8/npp.8.0.Installer.exe"

$SaveTo = "C:\temp\notepad++_setup.exe"

Invoke-WebRequest -uri $DownloadUrl -OutFile $SaveTo

这两个脚本基本上是相同的,其中一个只使用一行并且没有变量,而第二个脚本将参数存储到变量中,以便以后编辑脚本更容易,特别是当这成为大型脚本的一部分时,那么您可以将变量移动到脚本的顶部,这样您只需要在需要更改它时在那里搜索即可。

答案2

Windows 10 内部版本 17063 或更高版本附带(稍旧)的 Windows 版本卷曲开箱即用,例如:

curl http://example.com/download/file.exe -O

curl可以从命令行或批处理文件调用,不需要 PowerShell。您可以通过curl以下方式处理包含 URL 列表的文本文件:

例如 download_urls.txt

http://example.com/file1.txt
http://example.com/file2.txt
http://example.com/file3.txt
...

例如 curl_download.bat

FOR /F "tokens=*" %%A IN (download_urls.txt) DO curl %%A -O

最新版本的官方手册页curl可以在以下位置找到:这里

答案3

好的,我花了一段时间但我找到了它并且它运行得很好。

@echo off
Title Download code from pastebin and display it with batch
Set "url=https://pastebin.com/raw/vzx1dEdW"
for %%# in (%url%) do ( set "File=%tmp%\%%~n#.txt" )
Call :Download "%url%" "%File%"
If exist "%File%" ( 
    ( Type "%File%")>con
Rem to save the contents in new text file
( Type "%File%" > Multi_Downloading_Files.txt)
)
Start "" Multi_Downloading_Files.txt
Pause>nul & Exit
::*********************************************************************************
:Download <url> <File>
Powershell.exe -command "(New-Object System.Net.WebClient).DownloadFile('%1','%2')"
exit /b
::*********************************************************************************

我从https://stackoverflow.com/questions/48860214/copy-text-from-url-with-a-batch-file

相关内容