wget

 wget komutu, Linux ve Unix benzeri işletim sistemlerinde yaygın olarak kullanılan güçlü bir dosya indirme aracıdır. Terminal üzerinden çalışarak, dosya veya web sayfası içeriği indirmenizi sağlar. Çoğu zaman komut satırı üzerinden indirilen dosyalar, özellikle script’ler veya veri analizi gibi işlemlerle uğraşan kullanıcılar tarafından tercih edilir.


📥 wget Komutu: Detaylı Anlatım + Modern Kullanım Örnekleri


🧾 1. wget Nedir?

  • wget, bir HTTP, HTTPS veya FTP bağlantısı üzerinden dosyaları indirmenize olanak tanır.

  • Genellikle internet üzerinden dosya indirme ve web scraping gibi işlemler için kullanılır.

  • wget, arxa planda çalışabilir ve indirme işlemi sırasında bağlantınız kesilse bile kaldığı yerden devam edebilir.


🛠️ 2. Temel Söz Dizimi

bash
wget [seçenekler] [URL]

Örneğin:

bash
wget https://example.com/dosya.zip

Bu komut, dosya.zip dosyasını belirtilen URL’den indirir.


🧭 3. wget Komutunun Temel Kullanımı

Bir dosya indirme:

bash
wget https://example.com/dosya.zip
  • Bu komut, https://example.com/dosya.zip dosyasını bulunduğunuz dizine indirir.

Bir web sayfası indirme:

bash
wget https://example.com
  • Bu komut, belirtilen web sayfasını HTML olarak indirir.

Bir dosya adı değiştirme (indirilen dosya ismini değiştirme):

bash
wget -O yeni_ad.zip https://example.com/dosya.zip
  • Bu komut, indirilen dosyayı yeni_ad.zip olarak kaydeder.


⚙️ 4. Yaygın wget Seçenekleri

SeçenekAçıklama
-O [dosya_adı]İndirilen dosyayı farklı bir adla kaydet
-cKesilen indirme işlemini kaldığı yerden devam ettir
-rWeb sitesini recursive (bağlantılı sayfalarla birlikte) olarak indir
-npWeb sayfasındaki üst dizine geçişi engeller
-l [sayı]İndirme derinliğini sınırlamak (kaç katman derinliğe kadar link takip edilecek)
-NYalnızca güncel dosyaları indirir (tarih kontrolü yapar)
--limit-rate=[hız]İndirme hızını sınırlamak (örneğin: --limit-rate=200k)
-P [dizin]Dosyaları belirtilen dizine kaydet

🔄 5. Devam Ettirilen İndirmeler (Kesilen İndirmeyi Devam Ettirme)

Eğer internet bağlantınız kesildiyse veya istemediğiniz bir şekilde işlem durursa, wget komutunu tekrar kullanarak kesilen indirmenin kaldığı yerden devam etmesini sağlayabilirsiniz:

bash
wget -c https://example.com/dosya.zip
  • Bu komut, önceki indirme kesildiyse kaldığı yerden devam eder.


🏞️ 6. Web Sitesi İndirme (Recursive - Tüm Sayfaları İndirme)

Bir web sitesini tüm sayfalarıyla birlikte indirmeniz gerekebilir. Bunun için -r seçeneğini kullanabilirsiniz:

bash
wget -r https://example.com
  • Bu komut, example.com web sitesinin tüm sayfalarını ve bağlantılı içeriği (resimler, stil dosyaları, vb.) indirecektir.

Web sayfasının sadece belirli bir derinlikte indirilmesi:

bash
wget -r -l 2 https://example.com
  • Bu komut, sadece 2 derinlik seviyesindeki sayfaları indirir (ana sayfa ve bir alt seviye sayfalar).

Yalnızca belirli türdeki dosyaları indirme:

bash
wget -r -A pdf,jpg https://example.com
  • Bu komut, web sitesindeki pdf ve jpg dosyalarını indirir.


🔐 7. Kullanıcı Girişi Yaparak İndirme (Authentication)

Eğer indirmek istediğiniz dosya parola korumalı bir alandaysa, --user ve --password seçeneklerini kullanarak kimlik doğrulaması yapabilirsiniz:

bash
wget --user=kullanici_adi --password=parola https://example.com/korumali_dosya.zip

🌐 8. Proxy Kullanarak İndirme

Eğer bir proxy sunucusu kullanıyorsanız, wget’i aşağıdaki şekilde yapılandırabilirsiniz:

bash
wget -e use_proxy=yes -e http_proxy=proxy.sunucu.com:8080 https://example.com/dosya.zip
  • Bu komut, proxy.sunucu.com üzerinden dosyayı indirir.


🧩 9. wget ve Shell Script Kullanımı

wget, scriptlerde çok kullanışlıdır. Örneğin, belirli bir URL’den dosyaları toplamak için bir bash script yazabilirsiniz:

bash
#!/bin/bash urls=("https://example.com/dosya1.zip" "https://example.com/dosya2.zip") for url in "${urls[@]}" do wget $url done

Bu script, urls dizisindeki her URL'yi indirir.


🌱 10. wget ile API Verisi İndirme

Bir API'den veri çekmek için wget komutunu kullanabilirsiniz:

bash
wget -O api_response.json "https://api.example.com/data?key=12345"
  • Bu komut, belirtilen API’den JSON verisini indirir ve api_response.json dosyasına kaydeder.


📦 11. wget Alternatifleri

  • curl: wget’in benzeri ama daha fazla protokol desteği olan bir başka popüler araçtır.

  • aria2: Çoklu bağlantılarla daha hızlı dosya indirme yapan bir araçtır.


🎯 Sonuç:

wget, internet üzerinden dosya indirmenin en güçlü komut satırı araçlarından biridir. Kullanıcı dostu olmakla birlikte, gelişmiş özellikleriyle büyük projelerde bile etkili bir şekilde kullanılabilir. İndirme hızı sınırlama, kesilen indirmeyi devam ettirme, web sayfalarını indirirken seçenekler kullanma gibi özellikler, onu oldukça pratik bir araç haline getirir.