2013-01-13 41 views
49

सर्वर मैं wget आदेश का उपयोग से सोफे सांख्यिकी डाउनलोड करने के लिए:डाउनलोड फ़ाइल को wget के साथ पुनर्नामित कैसे करें?

wget -c http://sourceforge.net/projects/sofastatistics/files/latest/download?source=dlp 

इस मामले में डाउनलोड की गई फ़ाइल के फ़ाइल नाम download?source=files है। यदि मैं विकल्प को कमांड में sofastatistics-latest.deb पर पुनर्नामित करने के लिए --output-document विकल्प जोड़ता हूं, तो डाउनलोड की गई फ़ाइल का प्रारूप dpkg पैकेज द्वारा पहचाना नहीं जाता है।

dpkg-deb: error: `sofastatistics-latest.deb' is not a debian format archive 

wget के साथ डाउनलोड की गई फ़ाइल को सही ढंग से नामित करने का तरीका कैसे बदलें?

अद्यतन - जनवरी 08 '15

दिए गए लिंक के साथ डाउनलोड की गई फ़ाइल हमेशा एक .tar.gz एक * हो जाएगा। वास्तविक नाम के साथ इसे पाने के लिए सिर्फ इस रूप में --content-disposition विकल्प जोड़ने (@ 6EQUJ5 करने के लिए धन्यवाद!):

wget --content-disposition http://sourceforge.net/projects/sofastatistics/files/latest/download?source=dlp 

लेकिन मैं एक * .deb फ़ाइल की जरूरत है, इसलिए यहाँ था सही @creaktive, मैं खोज करने के लिए किया था * .deb फ़ाइल लिंक के लिए।

उत्तर के लिए सभी को धन्यवाद!

+2

तो dpkg का कहना है कि, यह _really_ एक डेबियन संग्रह नहीं है ... क्या करता है 'file' कहा? – fge

+0

आपके द्वारा उल्लिखित यूआरएल एक HTML पृष्ठ है। –

+0

मुझे लगता है कि आपने गलत जवाब स्वीकार कर लिया है। – user83039

उत्तर

1

वह लिंक एक पुनर्निर्देशक को इंगित करता है, अंतिम गंतव्य नहीं! तो आप HTML डाउनलोड कर रहे हैं और इसे .deb पर नाम दे रहे हैं। अव्यवस्थित पेज शीर्ष के आसपास इस है:

आपका डाउनलोड 0 सेकंड ... डाउनलोड के साथ समस्याएं में शुरू होगा? कृपया इस direct link का उपयोग करें, या अन्य mirror का प्रयास करें। http://downloads.sourceforge.net/project/sofastatistics/sofastatistics/1.3.1/sofastats-1.3.1-1_all.deb?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fsofastatistics%2Ffiles%2Fsofastatistics%2F1.3.1%2F&ts=1358119361&use_mirror=ufpr

पास wget को यह यूआरएल:

अब, इस मान्य लिंक (ध्यान दें download उपसर्ग) है। यह भी ध्यान दें कि SourceForge उपयोगकर्ता-एजेंट स्ट्रिंग के माध्यम से परिचालन प्रणाली को अतिथि करने के लिए आपको बाहर निकालने का प्रयास करता है। "Wget" के लिए सबसे अच्छा अनुमान .tar.gz पैकेज प्रतीत होता है। इसलिए, आपको डेब फ़ाइल का अनुरोध करने के लिए और अधिक विशिष्ट होना चाहिए!

+0

इस सॉफ़्टवेयर के लिए .tar.gz संस्करण है: http://sourceforge.net/projects/sofastatistics/files/sofastatistics/1.3.1/ सुनिश्चित करें कि आप .deb लिंक का चयन करें! – creaktive

59

मनमाने ढंग से फ़ाइल नाम में मानक आउटपुट का एक रीडायरेक्ट हमेशा काम करता है। तुम्हें पता है, सही ढंग से कर रहे हैं वास्तव में -O

wget http://www.kernel.org/pub/linux/kernel/README -O foo 
--2013-01-13 18:59:44-- http://www.kernel.org/pub/linux/kernel/README 
Resolving www.kernel.org... 149.20.4.69, 149.20.20.133 
Connecting to www.kernel.org|149.20.4.69|:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 12056 (12K) [text/plain] 
Saving to: `foo' 

100%[======================================================================================================================================>] 12,056  --.-K/s in 0.003s 

2013-01-13 18:59:45 (4.39 MB/s) - `foo' saved [12056/12056] 

का उपयोग कर के रूप में आदमी wget कहते हैं, आप अपनी फ़ाइल में एक HTML हो रही किया जाना चाहिए (आमतौर पर आदमी फ़ाइल साथ की जाँच की जा सकती है)।

[संपादित करें]

अपने मामले क्लाइंट में 302 मिली प्राप्त कर रहा है (आप के साथ कर्ल -v यूआरएल यह जांच कर सकते हैं)।

निम्नलिखित कर्ल 3xx सम्मान से काम कर देता है:

$ curl -L http://sourceforge.net/projects/sofastatistics/files/latest/download?source=files -o foo.deb 
    % Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
    0 463 0  0 0  0  0  0 --:--:-- 0:00:01 --:--:--  0 
    0  0 0  0 0  0  0  0 --:--:-- 0:00:02 --:--:--  0 
100 2035k 100 2035k 0  0 390k  0 0:00:05 0:00:05 --:--:-- 1541k 
$ file foo.deb 
foo.deb: gzip compressed data, was "sofastats-1.3.1.tar", last modified: Thu Jan 10 00:30:44 2013, max compression 

वहाँ HTTP पुनर्निर्देश को सहन करने की wget के लिए इसी तरह के विकल्प होना चाहिए।

14

आप एक वेब ब्राउज़र से एक ही डाउनलोड करने के लिए थे, और आप ब्राउज़र वास्तव में फ़ाइल सही नामकरण नोटिस, तो आप wget समान व्यवहार देने के लिए --content-disposition विकल्प का उपयोग कर सकते हैं:

wget --content-disposition http://sourceforge.net/projects/sofastatistics/files/latest/download?source=dlp 

मेरे डेबियन आदमी पेज रिपोर्ट इस लेकिन एक 'प्रायोगिक' सुविधा के रूप में मैं नहीं कर सकते याद यह मेरे लिए काम नहीं कर रहा:

 --content-disposition 
      If this is set to on, experimental (not fully-functional) support for "Content-Disposition" headers is enabled. This can currently result in extra round-trips to the server 
      for a "HEAD" request, and is known to suffer from a few bugs, which is why it is not currently enabled by default. 

      This option is useful for some file-downloading CGI programs that use "Content-Disposition" headers to describe what the name of a downloaded file should be. 

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

  • कोई संबंधित समस्या नहीं^_^