Introduzione
Curl è un strumento per trasferire dati da o verso un server, utilizzando uno dei protocolli supportati come HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP o FILE. Il comando è progettato per funzionare senza l'interazione dell'utente. Curl offre molte funzionalità come:
- Proxy support.
- User authentication.
- FTP upload.
- HTTP post.
- SSL connections.
- Cookies.
- File transfer resume and more.
In questo tutorial vedremo come utilizzare Curl su Linux per scaricare dei file.
Scaricare un file con Curl
La sintassi è la seguente per scaricare (download) i file dal server http/ftp remoto.
Per scaricare un file:
curl -O https://server1.noviello.it/file.tar.gz
Per scaricare più file contemporaneamente:
curl -O https://noviello.it/index.html -O https://noviello.it/file.zip
Scaricare un file con Curl da un server SSH
È possibile scaricare i file in modo sicuro usando da un server SSH usando SFTP.
Da console dare il seguente comando, utilizzando i propri parametri di accesso:
curl -u nomeutente sftp://noviello.it/path/to/file.txt
Se si vuole scaricare un file dalla home del proprio utente del server remoto utilizzare il carattere ~ (indica la directory $HOME):
curl -u nomeutente sftp://home.noviello.it/~/docs/nomefile.pdf
Puoi scaricare un file da un server SSH usando SCP con una chiave privata per autenticarti, la sintassi è la seguente:
curl -u nomeutente: --key ~/.ssh/id_rsa --pubkey ~/.ssh/id_rsa.pub scp://home.noviello.it/~/img/profile.png
- -u nomeutente - Specifica il nome utente da utilizzare per l'autenticazione del server.
- -u nomeutente:password - Specifica il nome utente e la password da utilizzare per l'autenticazione del server.
- –Key ~/.ssh/id_rsa - È il nome del file che contiene la chiave privata SSL o SSH. Ti consente di recuperare la tua chiave privata da questo file.
- –Pubkey ~/.ssh/id_rsa.pub - È il nome del file che contiene la chiave privata SSL o SSH. Ti consente di recuperare la tua chiave pubblica da questo file.
- scp:indirizzo/percorso - Usa il protocollo scp e scarica il file dalla home del server chiamata home.noviello.it.
Scaricare un file utilizzando username e password
La sintassi è la seguente per scaricare un file usando username e password dell'ftp:
curl ftp://nomeutente:[email protected]:21/path/to/backup.tar.gz
Oppure, un'altro modo di scrivere il comando:
curl -u nomeutente:password ftp://ftp.noviello.it:21/path/to/backup.tar.gz
L'utente ftp sicuro (ftp con ssl) può utilizzare l'opzione –ftp-ssl:
curl --ftp-ssl -u nomeutente:password ftp://ftp.noviello.it:21/path/to/backup.tar.gz
Autenticazione HTTP e download di file con curl
L'utente HTTP può utilizzare la sintassi seguente:
curl http://nomeutente:[email protected]/file/path/data.tar.gz
Oppure, un'altro modo di scrivere il comando:
curl -u nomeutente:password http://server.noviello.it/file/path/data.tar.gz
Altri comandi utili
È possibile scaricare una pagina Web e archiviarla in un file locale con il seguente comando:
curl -o noviello.html https://noviello.it/index.html
Per scrivere l'output del comando in un file locale con lo stesso nome del file richiamato, da terminale:
curl --remote-name https://server.noviello.it/file.tar.gz
Per scrivere l'output del comando in un file:
curl -o output.txt http://server.noviello.it/file.tar.gz
Conclusione
Per maggiori informazioni sull'utilizzo del comando curl:
curl -h