如何从特定的Sourceforge项目下载所有文件?

时间:2010-08-02 17:51:41

标签: wget sourceforge msys

花了大约一个小时从sourceforge下载几乎每个Msys包后,我想知道是否有更聪明的方法来做到这一点。为此可以使用wget吗?

2 个答案:

答案 0 :(得分:2)

我已成功使用此脚本:

https://github.com/SpiritQuaddicted/sourceforge-file-download

供您使用:

sourceforge-file-downloader.sh msys 

首先应下载所有页面,然后在页面中找到实际链接并下载最终文件。

从项目说明:

  

允许您下载所有sourceforge项目的文件。将当前目录下载到名为项目的目录中。将项目的名称作为第一个参数传递,例如./sourceforge-file-download.sh inkscape下载所有http://sourceforge.net/projects/inkscape/files/

为了防止回购邮件被删除,我会在这里发布,因为它足够短:

#!/bin/sh

project=$1
echo "Downloading $project's files"

# download all the pages on which direct download links are
# be nice, sleep a second
wget -w 1 -np -m -A download http://sourceforge.net/projects/$project/files/

# extract those links
grep -Rh direct-download sourceforge.net/ | grep -Eo '".*" ' | sed 's/"//g' > urllist

# remove temporary files, unless you want to keep them for some reason
rm -r sourceforge.net/

# download each of the extracted URLs, put into $projectname/
while read url; do wget --content-disposition -x -nH --cut-dirs=1 "${url}"; done < urllist

rm urllist

答案 1 :(得分:0)

如果没有 wget 或 shell 安装,请使用 FileZilla:sftp://yourname@web.sourceforge.net 您打开与 sftp 和密码的连接,然后浏览到 /home/pfs/

在该路径(可能是 ? 标记)之后,您填写要在远程站点下载的文件夹路径,就我而言 /home/pfs/project/maxbox/Examples/

这是frs的访问路径:文件发布系统:/home/frs/project/PROJECTNAME/ filezilla_sourceforge