2010-08-02 6 views
6

स्रोत फोर्ज से लगभग हर Msys पैकेज डाउनलोड करने में लगभग एक घंटे खर्च करने के बाद मैं सोच रहा हूं कि ऐसा करने के लिए एक और चालाक तरीका है या नहीं। क्या इस उद्देश्य के लिए wget का उपयोग करना संभव है?किसी विशिष्ट Sourceforge प्रोजेक्ट से सभी फ़ाइलों को कैसे डाउनलोड करें?

+0

आप एसवीएन | जीआईटी का उपयोग कर रहे हैं, है ना? – sholsapp

+0

ठीक है, मैं कर सकता हूं लेकिन मैसी एसवीएन/गिट एक्सेस की पेशकश नहीं करता है, है ना? – FFox

+0

यह सबसे पुराना SO सवाल है जिसे मैंने बिना जवाब के देखा है – Assimilater

उत्तर

1

मैं इस स्क्रिप्ट को सफलतापूर्वक उपयोग किया है:

sourceforge-file-downloader.sh msys 

यह सभी पृष्ठों पहले डाउनलोड करना चाहिए तो पृष्ठों और डाउनलोड में वास्तविक लिंक मिलेंगे:

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

आपके उपयोग रन के लिए अंतिम फाइलें

परियोजना विवरण से:

आप एक sourceforge परियोजना की फ़ाइलों के सभी डाउनलोड करने के लिए अनुमति देता है। प्रोजेक्ट जैसे नाम की निर्देशिका में वर्तमान निर्देशिका में डाउनलोड। पहला तर्क के रूप में परियोजना का नाम दर्रा, जैसे ./sourceforge-file-download.sh इंकस्केप 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 
संबंधित मुद्दे

 संबंधित मुद्दे