Linux Curl Komutu Nedir?
Curl komutu bugün Linux'un en güzide komutlarından biri ancak geçmişi 1990 yılının ortalarına kadar gidiyor. Esasında İsveçli bir programcının (Daniel Stenberg) projesi olarak dünyaya gelmiş. Amacı ise periyodik olarak bir web sayfasından döviz kurlarını indirmek ve IRC kullanıcılarına ABD doları cinsinden İsveç Kronu eşdeğerlerini sağlamakmış.
Sonuçta bu projeye farklı özellikler eklenmiş ve son derece başarılı hale gelmiş.
tecmint.com'da sağolsun 15 curl komutunu derlemiş ve yazmış.
Ben de hem öğrenmek hem de Türkçe okumak isteyenler için aşağıya derledim.
1. curl Version bilgisini almak
-V ya da --version opsionları yalnız versiyon bilgisini vermekle kalmıyor aynı zamanda mevcut versiyon ile desteklenen protokol ve özellikleri de gösteriyor.
2. Dosya indirmek
Curl dosya indirmek için de kullanılabilir. -O seçeneği ile kullanıldığında dosyayı geçerli çalışma dizinine uzak konumdakiyle aynı adla kaydederken, -o kullanılırsa farklı bir dosya adı ve / veya konum belirlenmesine izin verir.
3. Yarıda kesilen bir indirme işlemine devam etmek
Bir indirme herhangi bir nedenle kesildiyse (örneğin, Ctrl + c ile kesildiyse), curl sayesinde kolayca devam ettirilebilir.
-C - (C'den sonra boşluk ve sonra tekrar tire) kullanımı curl'e "indirmeye kaldığı yerden başla" der.
4. Birden fazla dosya indirmek
$ curl -O http://yoursite.com/info.html -O http://mysite.com/about.html
5. Bir dosyadan URL indirme
Curl xargs ile birleştirildiğinde dosyaları bir dosyadaki URL listesinden indirmek mümkün oluyor.Xargs nedir? Xargs standart girdiden veri akışlarını okuyan, ardından komut satırları oluşturan ve çalıştıran bir komuttur. Bir komutun çıktısını alabilir ve onu başka bir komutun argümanı olarak iletebilir. Komut belirtilmezse, xargs varsayılan olarak echo'yu çalıştırır.
Peki curl ile birlikte kullanımı nasıl? Aşağıdaki gibi:
$ xargs -n 1 curl -O < listurls.txt
6. Kimlik Doğrulaması (Authentication) olan veya olmayan bir Proxy kullanmak
proxy.alanadiniz.com adresinde 8080 numaralı bağlantı noktasını dinleyen bir proxy sunucusunun arkasındaysanız;
$ curl -x proxy.alanadiniz.com:8080 -U user:password -O http://alanadiniz.com/dosyaniz.tar.gz
Proxy'niz kimlik doğrulaması gerektirmiyorsa -U user:password kısmını atlayabilirsiniz.
7. HTTP Üstbilgilerini Sorgulama
$ curl -I www.sparta.com.tr
8. Parametrelerle bir POST isteğinde bulunma
Aşağıdaki komut, firstName ve lastName parametrelerini ve bunlara karşılık gelen değerleri https://alanadi.com/info.php adresine gönderecektir.$ curl --data "firstName=Sinem&lastName=Basaran" https://alanadi.com/info.php
9. FTP Sunucusundan kimlik doğrulama olmadan dosya indirme (Download)
Uzak bir FTP sunucusu ftp: // herhangibirftpserver adresinde bağlantı bekliyorsa, aşağıdaki komut dosya.tar.gz dosyanızı geçerli çalışma dizinine indirecektir.10. FTP Sunucusuna kimlik doğrulama olmadan dosya yükleme (Upload)
yereldosya.tar.gz adlı yerel bir dosyayı curl kullanarak ftp: // herhangibirftpserver'a yüklemek için:
$ curl -u username:password -T mylocalfile.tar.gz ftp://yourftpserver12. Web sayfası çerezlerini depolama
https://www.hurriyet.com.tr adresine göz attığınızda bilgisayarınıza hangi çerezlerin indirildiğini görmek ve bunları hurriyet.txt dosyasına kaydetmek için aşağıdaki komut kullanılabilir:
$ curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O(Daha sonra dosyayı görüntülemek için cat hurriyet.txt komutu kullanılabilir.)

Hiç yorum yok:
Yorum Gönder