CUrl: lista comandi piu’ usati e pratici del potente strumento di networking open source

Cosa è cUrl

cUrl è un linguaggio di programmazione a oggetti open source, utilissimo nell’ambito di applicazioni web dove è richiesta una forte intercompatibilità tra protocolli e documenti.

In particolare evita allo sviluppatore di dover utilizzare più linguaggi di programmazione, rendendo disponibile in un unico framework una serie funzioni combinate tra linguaggi di markup (HTML o JS) e computazionali (Java, C#, C++…).

cUrl consiste in un package e mette a disposizione tool e command line per operare sul NET usando sintassi URL.
Supporta molti protocolli, come Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, DICT, FILE, FTP, FTPS, Gopher, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet e TFTP.

Il sito ufficiale http://curl.haxx.se/ dove è possibile scaricare i pacchetti.
Inutile dire che gira su praticamente qualsiasi piattaforma.

I comandi da sapere


 

Scaricare un file

$ curl http://www.spaceclick.com

per salvare,

$ curl http://www.spaceclick.com > sc-com.html

 

Scaricare un file solo se è stato modificato prima/dopo una certa data

dopo la data,

$ curl -z 20-Dec-14 http://www.spaceclick.com/aprettyfile.html

prima della data,

$ curl -z -20-Dec-14 http://www.spaceclick.com/aprettyfile.html

 

Scaricare file tramite FTP

$ curl -u ftpuser:ftppass -O ftp://ftpserver/public/abcd.php

per scaricare una cartella,

$ curl -u ftpuser:ftppass -O ftp://ftpserver/public/

 

Ripristinare download interrotti

per interrompere un download di grandi dimensioni si può usare il Ctrl+C,
poi, per riprendere,

$ curl -C - -O http://www.spaceclick.com/bigfile.ext

 

Salvare l’output in un file

$ curl -o aprettyfileNAME.html http://www.spaceclick.com/aprettyfile.html
$ curl -O http://www.spaceclick.com/aprettyfile.html

con l’opzione -O il nome sarà lo stesso dell’origine, con -o lo potremmo decidere noi

 

Richiedere più file in contemporanea

$ curl -O URL1 -O URL2

 

Limitare la velocità di scaricamento

$ curl --limit-rate 1000B -O http://www.spaceclick.com/bigfile.ext

in questo caso limitato a 1000 Bytes/s

 

Scaricare una serie di file in base ad un pattern di caratteri

$ curl   ftp://ftp.spaceclick.com/files/[a-z]/

 

Seguire rotte HTTP tramite il loro response

$ curl http://www.spaceclick.com

è possibile forzare a seguire i redirect con l’opzione -L,

$ curl -L http://www.spaceclick.com

 

Autenticarsi tramite HTTP (base auth)

$ curl -u username:password URL

 

Caricare file su un server FTP

$ curl -u ftpuser:ftppass -T filename.txt ftp://ftp.server.com

per caricare file multipli,

$ curl -u ftpuser:ftppass -T "{file1,file2}" ftp://ftp.server.com

 

Abilitare la modalità Verbose

è sufficiente inserire nel comando desiderato l’opzione -v, es:

$ curl -v http://www.spaceclick.com

 

Usare il protocollo DICT

$ curl dict://dict.org/d:bash

 

Inviare una mail tramite protocollo SMTP

$ curl --mail-from aname@abcd.com --mail-rcpt foo@xyz.com smtp://mailserver.com

in seguito verranno richiesti oggetto e corpo, inserirli come segue, con il punto come terminatore

Subject: Test invio email (oggetto)
Questo è un test di invio (corpo)
.

 

Scaricare un file tramite PROXY

usare l’opzione -x

$ curl -x proxysever.domain.com:3128 http://www.spaceclick.com

 

Come vedete cUrl è una libreria molto versatile e interessante, fatene buon uso!

Share on Social Media