Konuyu Açan #1
wget ile Dosya İndirme

Günlük sunucu yönetimi veya kişisel projelerde dosya indirme işlemleri sık karşılaşılan görevlerdendir. Bu yazıda, wget ile farklı senaryolarda nasıl güvenilir ve tekrarlanabilir indirme akışları kurabileceğinizi adım adım ele alacağım.


Giriş ve temel kullanım
wget, komut satırından dosya indirmek için en yaygın kullanılan araçlardan biridir. Basit bir dosyayı indirmek için:
[wget resmi sitesi] adresinde de belirtildiği gibi temel komut şu şekildedir:

Bu komut, mevcut dizine dosya.zip adlı dosyayı indirir. Ancak gerçek dünya kullanımlarında tek komutluk bir indirmenin ötesinde ihtiyaçlar ortaya çıkabilir.

İndirme kalıcılığı ve yeniden deneme mekanizması
İstikrarsız bağlantılarda veya büyük dosyalarda çalışmayı kesintiye uğratmamak için bazı seçenekler kullanılır:
  • -c veya --continue: Kesinti sonrası kaldığı yerden devam eder.
  • --tries=N: Başarısız denemelerin sayısını sınırlar.
  • --wait=SECONDS --random-wait: İndirirken sayfalar arası beklemeyi simüle eder, özellikle sunucu kısıtlamalarını aşmak için kullanışlıdır.
  • -P dizin: İndirilen dosyayı belirli bir dizine kaydeder.

Örnek:
KOD
1wget -c --tries=5 --wait=2 --random-wait http://örnek.com/veri.iso -P /dikomutu/indirilenler


Korumalı veya oturum açılması gereken kaynaklar
Bazı sunucular kullanıcı doğrulaması ister. Bunun için:
  • --user ve --password: Temel HTTP kimlik doğrulaması için kullanılır.
  • --ask-password: Parolayı komut satırında güvenli biçimde girer.
  • --header "Authorization: Bearer ...": OAuth tabanlı akışlarda özel başlıklar eklemenizi sağlar.
  • --load-cookies ve --save-cookies: Çerezlerle oturum yönetimini sürdürür.

Örnek:
KOD
1wget --user=kullanici --password=parola https://site.example/urunler/belge.pdf -O belge.pdf


Dinamik içerikler ve takip eden linkler
Bir web sayfasındaki tüm dosyaları veya belirli uzantıları indirmek için:
  • -r veya --recursive: Kökten başlayarak yeniden indirir.
  • -A "*.pdf" veya -A pdf: Sadece belirli uzantılara sahip dosyaları indirir.
  • -l 1: Geri derecelendirme derinliğini sınırlamak için.

Örnek:
KOD
1wget -r -l 1 -A pdf http://orneksite.com/raporlar/ -P /raporlar


IPv6, proxy ve bağlantı güvenliği
Güvenilir bir kurulum için proxy ve güvenli bağlantı ayarları yardımcı olabilir:
  • --proxy=on/off ve --proxy-user, --proxy-password: Proxy üzerinden yönlendirme.
  • --secure-protocol=auto: HTTPS/FTP gibi protokollerin güvenli tercihini belirler.
  • --limit-rate=100k: Ağ kullanımını sınırlayarak bant genişliği yönetimini sağlar.


Güncel ipuçları ve pratikler
  • İndirme kuyruğu yönetimi için -b veya --background ile arka planda çalıştırabilirsiniz.
  • İndirme listesini bir dosyadan almak için -i dosya.txt kullanın; bu, toplu indirmeler için kullanışlıdır.
  • Dosya adında özel karakterler varsa -O ile hedef dosya adını açıkça belirlemek gerekir.


Bu konudaki deneyimleriniz veya özellikle hangi senaryolarda wget’i tercih ettiğinize dair örnekleriniz neler? Özellikle kuyruklu indirmeler, dinamik sayfalardan veri çekme ya da güvenli bağlantılarla ilgili gözlemleriniz varsa paylaşın.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi