Örneklerle Linux’ta Wget Komutu Nasıl Kullanılır
Merhabalar,
GNU Wget, web’den dosya indirmek için bir komut satırı yardımcı programıdır. Wget ile HTTP, HTTPS ve FTP protokollerini kullanarak dosyaları indirebilirsiniz. Wget, birden fazla dosya indirmenize, indirmeleri devam ettirmenize, bant genişliğini sınırlamanıza, özyinelemeli indirmelere, arka planda indirmenize, bir web sitesini yansıtmanıza ve çok daha fazlasına izin veren bir dizi seçenek sunar.
Bu eğitim makalesinde, pratik örnekler ve en yaygın seçeneklerin ayrıntılı açıklamaları aracılığıyla wget komutunun nasıl kullanılacağını anlatacağım sizlere.
wget paketi bugün çoğu Linux dağıtımına önceden yüklenmiştir.
Wget paketinin sisteminizde kurulu olup olmadığını kontrol etmek için konsolunuzu açın, wget yazın ve enter tuşuna basın. Yüklü wget’iniz varsa, sistem: wget: missing URL
Aksi takdirde, wget command not found
ekrana gelecektir.
Wget kurulu değilse, dağıtımınızın paket yöneticisini kullanarak kolayca kurabilirsiniz.
Wget’i Ubuntu ve Debian’a Kurmak:
sudo apt install wget
Wget’i CentOS ve Fedora’ya Yükleme:
sudo yum install wget
Wget Komut Söz dizimi:
wget komutunun nasıl kullanılacağına geçmeden önce, temel sözdizimini gözden geçirerek başlayalım.
wget yardımcı programı ifadeleri aşağıdaki gibidir.
wget [seçenekler] [url]
wget ile dosya nasıl indirilir:
En basit haliyle, herhangi bir seçenek olmadan kullanıldığında, wget [url]’de belirtilen kaynağı geçerli dizine indirir.
Aşağıdaki örnekte, ben zimbra sunucusunu indireceğim.
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Yukarıdaki resimden de görebileceğiniz gibi wget, domainin IP adresini çözerek başlar, ardından uzak sunucuya bağlanır ve aktarımı başlatır.
İndirme sırasında wget, dosya adı, dosya boyutu, indirme hızı ve indirmeyi tamamlamak için tahmini sürenin yanında ilerleme çubuğunu gösterir. İndirme işlemi tamamlandığında, indirilen dosyayı mevcut çalışma dizininizde bulabilirsiniz.
İndirme işleminin gözükmesini istemiyorsanız -q seçeneğini kullanın.
wget -q https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Dosya zaten varsa, wget dosya adının sonuna .N (sayı) ekler.
İndirilen Dosyayı Farklı İsimle Kaydetme:
İndirilen dosyayı farklı bir adla kaydetmek için -O seçeneğini ve ardından seçilen adı yazalım.
wget -O zimbra-server.tgz https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Yukarıdaki komut, zimbra yı kendi paketin orjinal adı yerine zimbra-server.tgz olarak kaydeder.
Bir Dosyayı Belirli Bir Dizine İndirme:
Varsayılan olarak, wget indirilen dosyayı geçerli çalışma dizinine kaydeder. Dosyayı belirli bir konuma kaydetmek için -P seçeneğini kullanın:
wget -P /home/firatcanoglu/ https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Yukarıdaki komut, wget’e zimbra yazılım dosyasını /home/firatcanoglu dizinine kaydetmesini söyler.
İndirme Hızını Sınırlama:
İndirme hızını sınırlamak için –limit-rate seçeneğini kullanabiliriz. Varsayılan olarak hız bayt/saniye cinsinden ölçülür. Kilobayt için k, megabayt için m ve gigabayt için g ekleyebiliriz.
Aşağıdaki komut zimbra yazıımının indirme hızını 2MB ile sınırlayacaktır:
wget --limit-rate=2m /home/firatcanoglu/ https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Bu seçenek, wget’in mevcut tüm bant genişliğini tüketmesini istemiyorsanız kullanışlı olabilir.
İndirmeye Devam Etme:
-c seçeneğini kullanarak indirme işlemine devam edebilirsiniz. Bu, büyük bir dosyanın indirilmesi sırasında bağlantınız koparsa ve indirmeyi sıfırdan başlatmak yerine öncekine devam edebilirsiniz.
Aşağıdaki örnekte, Ubuntu zimbra yazılımını indirmeye devam ediyoruz:
wget -c /home/firatcanoglu/ https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Eğer ki, Uzak sunucu indirmelerin devam etmesini desteklemiyorsa, wget indirmeyi baştan başlatacak ve mevcut dosyanın üzerine yazacaktır.
Arka Planda İndirme:
Arka planda indirmek için -b seçeneğini kullanın. Aşağıdaki örnekte, arka planda zimbra yazılımını dosyasını indiriyorum.
wget -b /home/firatcanoglu/ https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Varsayılan olarak çıktı, geçerli dizindeki wget-log dosyasına yönlendirilir. İndirmenin durumunu izlemek için tail komutunu kullanın:
tail -f wget-log
Wget User-Agent (Kullanıcı Aracı)` ı Değiştirme:
Bazen bir dosya indirilirken, uzak sunucu Wget User-Agent’ı engelleyecek şekilde yapılandırılmış olabilir. Bu gibi durumlarda, farklı bir tarayıcıyı taklit etmek için -U seçeneğini iletin.
wget --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
Yukarıdaki komut, zimbra.com dan indirme işlemini Firefox 60’ı taklit ederek indirecektir.
Birden Fazla Dosya İndirme:
Aynı anda birden fazla dosya indirmek istiyorsanız, -i seçeneğini ve ardından indirilecek URL’lerin listesini içeren yerel veya harici bir dosyanın yolunu kullanın. Her URL’nin ayrı bir satırda olması gerekir.
Aşağıdaki örnek, zimbra-kurulumu.txt dosyasında belirtilen URL’leri kullanarak zimbranın RHEL7 RHEL8 ve UBUNTU versiyonlarının indirme işlemini gösterir:
Dosya adı olarak – belirtirseniz, URL’ler standart girdiden okunur.
FTP ile indirme:
Parola korumalı bir FTP sunucusundan dosya indirmek için, aşağıda gösterildiği gibi kullanıcı adını ve parolayı belirtin:
wget --ftp-user=FTP_USERNAME --ftp-password=FTP_PASSWORD ftp://deneme.com/deneme.tgz
Bir Web Sitesinin Full Yedeğini Oluşturmak:
Wget ile bir web sitesinin full yedeğini oluşturmak için -m seçeneğini kullanın. Bu, tüm dahili bağlantıları ve ayrıca web sitesi kaynaklarını (JavaScript, CSS, Görüntüler) izleyerek ve indirerek web sitesinin eksiksiz bir yerel kopyasını oluşturacaktır.
wget -m -P /home/firatcanoglu/Desktop/web-yedek/ https://www.1.net
İndirilen web sitesini yerel tarama için kullanmak istiyorsanız, yukarıdaki komuta birkaç ekstra argüman iletmeniz gerekecektir.
wget -m -k -p -P /home/firatcanoglu/Desktop/web-yedek/ https://www.l.net
-k seçeneği, wget’in indirilen belgelerdeki bağlantıları yerel görüntülemeye uygun hale getirmek için dönüştürmesine neden olur. -p seçeneği wget’e HTML sayfasını görüntülemek için gerekli tüm dosyaları indirmesini söyleyecektir.
Sertifika Kontrolünü Atlayarak İndirme:
Geçersiz bir SSL sertifikasına sahip bir ana bilgisayardan HTTPS üzerinden bir dosya indirmek istiyorsanız --no-check-certificate
seçeneğini kullanın:
wget --no-check-certificate https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
İndirme İşlemini Belirli Bir Uygulamaya Yönlendirme:
Aşağıdaki örnekte, wget sessizce ( flag -q) en son WordPress sürümünü indirecek ve stdout’a ( flag -O -) çıkaracak ve arşivi /home/firatcanoglu/Desktop/www/ dizinine çıkaracak olan tar yardımcı programına aktaracaktır.
wget -q -O - "http://wordpress.org/latest.tar.gz" | tar -xzf - -C /home/firatcanoglu/Desktop/www/
Sonuç olarak özetlersek; wget ile birden fazla dosya indirebilir, kısmi indirmelere devam edebilir, web sitelerini bir komutla yedekleyebilir ve Wget seçeneklerini ihtiyaçlarınıza göre birleştirebilirsiniz.
Umarım bu eğitim yazısı sizler için faydalı olur.
Bu başarılı yazı için çok teşekkür ederim.