【问题标题】:Downloading in parallel using wget or aria2 in windows from FTP site在 Windows 中从 FTP 站点使用 wget 或 aria2 并行下载
【发布时间】:2017-02-03 22:03:55
【问题描述】:

如何使用 wget2 或 aria 从此处下载所有文件(并行):ftp://ftp.soilgrids.org/data/recent/

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

我在窗户上

【问题讨论】:

    标签: ftp wget aria2


    【解决方案1】:

    wget 不是多线程的,因此您需要以某种方式拆分包中的 URL 并多次调用程序。另一方面,aria2is not able to recursively download。由于您使用的是 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
    

    ...并行下载文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-03
      • 2015-02-25
      • 1970-01-01
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多