2013-11-01 15 views
11

Linux'ta curl ile çalışıyorum. Bir dosyanın bir kısmını ftp sunucusunda (-r seçeneğini kullanarak) indiriyorum, ancak bağlantım iyi değil, her zaman kesiliyor. Tekrar bağlandığımda indirmeye devam eden bir komut dosyası yazmak istiyorum.Kesintiye otomatik olarak nasıl devam edilir

ben bu komutu kullandım ama işe yaramıyor:

until curl -r 666-9999 -C - --retry 999 -o "path/to/file" "ftp:/path/to/remote/file"; do :; done 

cevap

8

wget bu kullanım şeklini spesifik olarak inşa edilmiş. Man sayfadan:

wget hemen hemen tüm Linux dağıtımları için kullanılabilir - büyük olasılıkla sizin zaten yüklenmiştir. Sadece dosyayı indirmek için wget kullanın, dosya tamamen aktarılana kadar ağ bağlantısını yeniden kuracaktır.

+0

Wget, bir dosyanın kısmi indirilmesini destekliyor mu (curl'de -r seçeneği gibi)? –

+2

manpage'e göre dosyanın sadece bir kısmını indirmeyi desteklemiyor, ancak '-c 'bayrağı bir indirme işlemine devam etmeyi sağlıyor. –

+0

Bildiğim kadarıyla, sadece Wayne'in söylediği gibi kısmen indirilen bir dosyayı sürdürmeyi destekliyor. Neden buna ihtiyacın vardı? wget tüm dosyayı (ve henüz indirmediğiniz parçaları) indirmekten sorumlu olacaktır. – sjaensch

1
curl -L -O your_url 

alınır dosya.

Şimdi bağlantınızın kesildiğini diyelim; Bu son byte dan indirilmeye devam edecek

curl -L -O -C - your_url 

manpage itibaren

indirildi

Kullanım "-C -" otomatik nerede olduğunu öğrenmek için bukle anlatmak/transferini devam ettirmek için nasıl . Daha sonra, bunu göstermek için verilen çıktı/giriş dosyalarını kullanır.

İlgili konular