2013-01-13 22 views
49

Ben wget komutunu kullanın sunucudan SOFA Statistics indirmek için:İndirilen dosyayı wget ile nasıl yeniden adlandırabilirim?

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

bu durumda indirilen dosyanın dosya adı download?source=files olduğunu. Komut dosyasına --output-document seçeneğini eklerseniz, çıktı dosyasını sofastatistics-latest.deb olarak yeniden adlandırmak için, indirilen dosyanın biçimi dpkg paketi tarafından tanınmadı.

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

İndirilen dosya doğru şekilde nasıl yeniden adlandırabilirim?

GÜNCELLEME - sağlanan bağlantıyı ile 8 Ocak '15

indirilen dosya her zaman bir Tar.gz a * olacaktır. (! @ 6EQUJ5 sayesinde) sadece bu kadar --content-disposition seçeneği eklemek gerçek adımla bunu elde etmek için:

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

Ama * .deb dosyasını gerekli, işte doğru @creaktive, ben aramak zorunda kaldı * .deb dosya bağlantısı için.

Tüm cevaplar için teşekkürler!

+2

dpkg, bu _really_ 'ne der Dosya 'yok ... bir Debian arşiv değil diyorsa: man sayfası raporları bu ancak bir 'deneysel' özellik olarak benim için çalışmıyor cant hatırlama? – fge

+0

Bahsedilen URL bir HTML sayfasıdır. –

+0

Yanlış cevapları kabul ettiğinizi düşünüyorum. – user83039

cevap

1

Bu bağlantı bir yönlendiriciye işaret eder, son hedef değil! Yani, HTML’yi indiriyor ve .deb’a yeniden adlandırıyorsunuz. Dağınık sayfa bu etrafında en üstte bulunur:

İndirme işleminiz 0 saniye içinde başlayacaktır ... Lütfen bu direct link kullanın veya başka bir mirror deneyin. 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

Geçiş wget bu URL:

Şimdi bu geçerli bir bağlantı ( download önek unutmayın). Ayrıca, SourceForge'ın, User-Agent dizesi üzerinden operasyonel sisteme konuk olarak sizi alt etmeye çalıştığını unutmayın. "Wget" için en iyi tahmin .tar.gz paketi gibi görünüyor. Yani, daha spesifik olmalı, deb dosyasını talep etmelisiniz!

+0

Bu yazılım için bir .tar.gz sürümü vardır: http://sourceforge.net/projects/sofastatistics/files/sofastatistics/1.3.1/ .deb bağlantısını seçtiğinizden emin olun! – creaktive

59

Standart çıktıların isteğe bağlı dosya adına yeniden yönlendirilmesi her zaman çalışır. adam wget diyor gibi Nitekim -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] 

kullanarak, doğru bunu yapıyor, kendi dosyasında bir HTML almak gerekir (genellikle adam dosyası ile kontrol edilebilir).

[DÜZENLE] davanız Client'ınızın

302 Bulunan alıyor (eğer curl -v URL'ye ile kontrol edebilirsiniz).

aşağıdaki bukle 3xx saygı göstererek hile yapar:

$ 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 yönlendirmesi tahammül wget için benzer bir seçenek olmalıdır. Bir web tarayıcısından aynı indirme yapmak için vardı ve tarayıcı aslında dosyayı doğru adlandırma fark ederseniz

14

, Wget aynı davranışı vermek --content-disposition seçeneğini kullanabilirsiniz:

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

My Debian

 --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. 
İlgili konular