在windows中使用wget或aria2从FTP站点并行下载

在windows中使用wget或aria2从FTP站点并行下载,ftp,wget,aria2,Ftp,Wget,Aria2,如何使用wget2或aria从此处下载所有文件(并行): 我试过aria2c-j8ftp://ftp.soilgrids.org/data/recent/但它什么也不做(也不显示任何错误消息) 我在windows上wget不是多线程的,因此您需要以某种方式将URL拆分到包中,并多次调用该程序。另一方面,aria2。由于您使用的是Windows,因此除了cmd和给定的wget和aria2之外,我无法假设还有什么有用的东西 我们可以用wget下载目录列表,并用aria2的URL构建一个文本文件,以便

如何使用wget2或aria从此处下载所有文件(并行):

我试过
aria2c-j8ftp://ftp.soilgrids.org/data/recent/
但它什么也不做(也不显示任何错误消息)


我在windows上

wget
不是多线程的,因此您需要以某种方式将URL拆分到包中,并多次调用该程序。另一方面,
aria2
。由于您使用的是Windows,因此除了
cmd
和给定的
wget
aria2
之外,我无法假设还有什么有用的东西

我们可以用
wget
下载目录列表,并用
aria2
的URL构建一个文本文件,以便并行下载。一个小批量文件将相应地对数据进行处理:

@ECHO OFF
SETLOCAL EnableDelayedExpansion    
SET host=ftp://ftp.soilgrids.org/data/recent
DEL urls.txt

REM fetch dirlisting from ftp
wget --no-remove-listing !host!/

FOR /F "tokens=1,9" %%G IN (.listing) DO (
    SET "modeflags=%%G"
    REM skip directories
    IF "x!modeflags:d=!"=="x!modeflags!" (
        ECHO !host!/%%H >> urls.txt
    )
)

REM cleanup
DEL .listing.*
DEL index.html.*
然后,你就可以做

aria2c -j8 -i urls.txt
…以并行下载文件