15 wskazówek, jak używać polecenia „curl” w Linux
- 4947
- 624
- Tomasz Szatkowski
W połowie lat 90. XX wieku, kiedy Internet był jeszcze w powijakach, szwedzki programista o nazwie Daniel Stenberg rozpoczął projekt, który ostatecznie stał się tym, co wiemy jako kędzior Dzisiaj.
Początkowo dążył do opracowania nerw To okresowo pobierałoby kursy walut ze strony internetowej i zapewniłoby użytkownikom IRC szwedzkiego Kronor równoważników w dolarach amerykańskich.
Krótko mówiąc, projekt prosperował, dodając kilka protokołów i funkcji po drodze - a reszta to historia. Teraz zanurzmy się obiema stopami i nauczmy się używać Curl do przesyłania danych i więcej w Linux!
Złożyliśmy następującą listę 15 poleceń Curl dla Ciebie.
1. Zobacz wersję curl
-V
Lub --wersja
Opcje nie tylko zwrócą wersję, ale także obsługiwane protokoły i funkcje w bieżącej wersji.
$ curl --version Curl 7.47.0 (x86_64-PC-Linux-gnu) libcurl/7.47.0 gnutls/3.4.10 Zlib/1.2.8 libidn/1.32 Librtmp/2.3 protokoły: plik DICT ftp ftps gopher http https imap Imaps ldap ldaps pop3 pop3s rtmp rTSP rTSP SMB SMTP SMTP TELNET TFTP Funkcje: Asynchdns IDN IPv6 Largefile GSS-API Kerberos SpnaGo Ntlm ntlm_wb ssl libz tlss-srpsSprpsSprps-Uss-srps-Uss-Uss-srps-Uss-srps-Uss-srps-uss-srpss-UsSprpSpSps-fiss
2. Pobierz plik
Jeśli chcesz pobrać plik, możesz użyć kędzior z -O
Lub -o
opcje. Pierwszy zapisz plik w bieżącym katalogu roboczym o tej samej nazwie, co w odległej lokalizacji, podczas gdy drugi umożliwia określenie innej nazwy pliku i/lub lokalizacji.
$ curl -o http: // yourdomain.com/yourfile.smoła.GZ # Zapisz jako swój plik.smoła.gz $ curl -o Newfile.smoła.GZ http: // twoja.com/yourfile.smoła.GZ # zapisz jako Newfile.smoła.GZ
3. Wznowić przerwane pobieranie
Jeśli z jakiegoś powodu pobieranie zostało przerwane (na przykład, używając Ctrl + c
), możesz to bardzo łatwo wznowić. Sposób użycia -C
- (Dash C, Space Dash) informuje Curl, aby wznowił pobieranie, począwszy od miejsca, w którym się skończyło.
$ curl -c --o http: // yourdomain.com/yourfile.smoła.GZPobierz plik za pomocą polecenia curl
4. Pobierz wiele plików
Za pomocą następującego polecenia pobierasz informacje.html I o.html z http: // twoje.com I http: // mysite.com, odpowiednio za jednym razem.
$ curl -o http: // relaite.com/info.html -o http: // mysite.com/około.html
5. Pobierz adresy URL z pliku
Jeśli połączysz kędzior Dzięki xargs możesz pobierać pliki z listy adresów URL w pliku.
$ xargs -n 1 curl -o < listurls.txtPobierz wiele plików z Curl
6. Użyj proxy z uwierzytelnianiem lub bez
Jeśli jesteś za serwerem proxy słuchającym na porcie 8080 Na pełnomocnik.Twoja domena.com, Do.
$ curl -x proxy.Twoja domena.com: 8080 -u Użytkownik: hasło -o http: // Twojadomina.com/yourfile.smoła.GZ
gdzie możesz pominąć -U użytkownik: hasło Jeśli twój proxy nie wymaga uwierzytelnienia.
7. Zapytanie nagłówki HTTP
Http Nagłówki pozwalają zdalnemu serwerowi WWW na wysyłanie dodatkowych informacji o sobie wraz z rzeczywistym żądaniem. Dostarcza to klientowi szczegółów dotyczących sposobu obsługi żądania.
Aby zapytać nagłówki HTTP ze strony internetowej, zrób:
$ curl -i www.Tecmint.comNagłówki HTTP na zapytanie o curl
Informacje te są również dostępne w narzędziach programistów przeglądarki.
8. Zrób żądanie Post z parametrami
Następujące polecenie wyśle imię I nazwisko parametry, wraz z ich odpowiednimi wartościami, https: // twojadomina.com/info.php.
$ curl - -data "FirstName = John & lastName = doe" https: // yourdomain.com/info.php
Możesz użyć tej wskazówki, aby symulować zachowanie zwykłej formy HTML.
9. Pobierz pliki z serwera FTP z uwierzytelnianiem lub bez
Jeśli zdalny serwer FTP oczekuje połączeń pod adresem ftp: // yourftpserver, Pobranie następujące polecenie plik.smoła.GZ W obecnym katalogu roboczym.
$ curl -u nazwa użytkownika: hasło -o ftp: // yourftpserver/yourfile.smoła.GZ
gdzie możesz pominąć -U użytkownika: hasło Jeśli serwer FTP zezwala na anonimowe loginy.
10. Prześlij pliki do serwera FTP z uwierzytelnianiem lub bez
Aby przesłać lokalny plik o nazwie MyLocalfile.smoła.GZ Do ftp: // yourftpserver Za pomocą curl zrób:
$ curl -u nazwa użytkownika: hasło -t mylocalfile.smoła.GZ ftp: // yourftpserver
11. Podaj agent użytkownika
agent użytkownika jest częścią informacji wysyłanych wraz z Http wniosek. Wskazuje to, która przeglądarka Klient używał do złożenia żądania. Zobaczmy, co nasza bieżąca wersja Curl używa jako domyślna, i zmieńmy ją później na „Jestem nową przeglądarką internetową”:
$ curl -i http: // localHost --user-agent „Jestem nową przeglądarką internetową”Curl Sprawdź agent użytkownika
12. PLAY STRONE PLAUSE
Chcesz zobaczyć, które pliki cookie są pobierane do komputera podczas przeglądania https: // www.CNN.com? Użyj następującego polecenia, aby je zapisać Cnncookies.tekst. Następnie możesz użyć polecenia CAT do wyświetlenia pliku.
$ curl-Cookie-jar cnncookies.txt https: // www.CNN.com/indeks.html -oCurl Store Witryna Pliki cookie
13. Wyślij pliki cookie
Możesz użyć plików cookie pobranych w ostatniej wskazówki w kolejnych żądaniach do tej samej strony.
$ curl -Cookie cnncookies.txt https: // www.CNN.com
14. Zmodyfikuj rozdzielczość nazw
Jeśli jesteś programistą i chcesz przetestować lokalną wersję Twoja domena.com Przed popchnięciem na żywo możesz sprawić, by curl rozwiązywał http: // www.Twoja domena.com Do twojego lokalnego hosta tak:
$ curl - -rezolwa www.Twoja domena.Com: 80: LocalHost http: // www.Twoja domena.com/
Zatem zapytanie http: // www.Twoja domena.com Powie Curl, aby poprosiła o witrynę z LocalHost zamiast używać DNS lub /etc/hosts plik.
15. Ogranicz szybkość pobierania
Aby zapobiec zwężeniu curl twojego przepustowości, możesz ograniczyć szybkość pobierania do 100 kb/s następująco.
$ curl--limit-Rate 100k http: // twoja.com/yourfile.smoła.GZ -O
Streszczenie
W tym artykule podzieliliśmy krótką historię pochodzenia Curl i wyjaśniliśmy, jak go używać za pomocą 15 praktycznych przykładów.
Czy znasz jakiekolwiek inne polecenia curl, które mogliśmy przegapić w tym artykule? Podziel się nimi z naszą społecznością w komentarzach! Ponadto, jeśli masz pytania, daj nam znać. Oczekujemy na kontakt zwrotny!
- « 12 Praktyczne przykłady polecenia Linux Xargs dla początkujących
- Zmień nazwę - narzędzie wiersza poleceń do zmiany nazwy wielu plików w Linux »