Avviso importante: tutti i testi di questo sito web sono stati tradotti da diverse lingue. Ci scusiamo per la loro qualità, potrebbe essere di qualità inferiore al solito. Saluti, l'Amministrazione del sito. E-mail: info@itbookmac.com

Utilizzo di cURL per scaricare file remoti dalla riga di comando

Ai fini di questa procedura dettagliata, ci concentreremo principalmente sul download di file dai due protocolli HTTP e SFTP comunemente riscontrati, sebbene si debba notare che cURL supporta molti più protocolli. Sebbene l’arricciatura sia facile da usare, è consigliabile avere una certa conoscenza della linea di comando.

Scarica i file di corrispondenza esatta con curl -O

Usando il flag maiuscolo -O con curl scarica il file dal server remoto mantenendo il nome esatto del file, la sintassi di base per questo è la seguente:

arricciatura -O [url]

Ciò significa che se il file URL specificato è denominato “sample.zip” verrà scaricato con il nome file “sample.zip” e se il file è denominato qualcosa di enorme e complicato come “LongExampleFileNameForOSXDaily-v-1-3-51-revision- 515b12-readme.txt “sul server remoto, salverà con quel nome esatto sul computer locale. I nomi di file più lunghi sono spesso meglio gestiti con il flag -o anziché -O, che affronteremo a breve.

I lettori abituali possono ricordare che abbiamo usato il comando arricciatura -O quando spieghiamo come estrarre il vero contenuto audio da un file di streaming m3u.

L’inizio di qualsiasi download con arricciatura mostra la percentuale trasferita, il tempo impiegato per il download e il tempo rimanente e la velocità di trasferimento.

Download di un file con arricciatura

Lo screenshot offre una rappresentazione migliore dell’esempio incollato di seguito, ma assomiglia a questo:

% Totale% Ricevuto% Xferd Velocità media Tempo Tempo Tempo Corrente
Dload Upload Total Spent Left Speed
100 10505 100 10505 0 0 79741 0 -: -: – -: -: – -: -: – 142k

Con la velocità di trasferimento mostrata puoi reindirizzare l’output di curl a / dev / null e utilizzarlo per testare la velocità della connessione internet, ma il comando wget ha una barra di trasferimento più facile da leggere e seguire, quindi wget è più adatto per quel compito.

Salvataggio di un file remoto con un nome diverso con curl -o

L’utilizzo di un flag minuscolo -o consente di specificare un nome file diverso per il file scaricato rispetto al nome sul server remoto. Questo può essere utile per ridurre lunghi nomi di file o semplicemente etichettare qualcosa in modo che sia più facile trovarlo da solo. La sintassi generale sarebbe:

curl -o [shortname] [url]

Ad esempio, se si desidera salvare un file IPSW iOS che si trova elencato su server Apple senza il nome completo lungo, è possibile utilizzare quanto segue:

curl -o iPhone5C-704.ipsw http://appldnld.apple.com/iOS7/031-1828.20131114.P3wE4/iPhone5,3_7.0.4_11B554a_Restore.ipsw

Questo scaricherà il file “iPhone5,3_7.0.4_11B554a_Restore.ipsw” ma lo chiamerà più corto come “iPhone5C-704.ipsw” più significativo.

Se preferisci non salvare il file nella directory di lavoro attuale, specifica un percorso come parte del nome del file in questo modo:

curl -o ~ / Desktop / localexample.dmg http: //url-to-file/example.dmg

Download di più file contemporaneamente con arricciatura

cURL può facilmente scaricare più file allo stesso tempo, tutto ciò che devi fare è specificare più di un URL in questo modo:

curl -O [URL 1] [URL 2] [URL 3]

Per i file con nomi diversi o ospitati su server diversi o all’interno di percorsi di directory diversi, utilizzare l’URL completo, ad esempio:

curl -O http://ftp.gnu.org/gnu/Licenses/fdl-1.1.txt http://ftp.gnu.org/gnu/Licenses/lgpl-2.1.txt http://ftp.gnu.org /gnu/GNUinfo/Audio/index.txt

D’altra parte, se i nomi dei file da scaricare utilizzano la denominazione incrementale, è possibile utilizzare parentesi per specificare un intervallo di download, in questo modo:

curl -O http://ftp.gnu.org/gnu/Licenses/fd1-1[1-3].txt

Questo porterebbe i file fdl-1.1.txt, fd1-1.2.txt e fd1-1.3.txt tutti allo stesso tempo senza dover specificare ogni URL univoco. Ovviamente questo funziona solo se i file si trovano nella stessa directory insieme e nello stesso dominio.

Autenticazione con arricciatura

Puoi anche passare l’autenticazione con cURL usando il flag -u:

curl -u utente: pass -O ftp: //remote_url/file-to-download.zip

Tieni presente che la cronologia di bash memorizzerà la password in testo normale quando si utilizza -u con un nome utente e una password specificati, pertanto non è consigliabile per la maggior parte delle situazioni. Puoi aggirare questo mettendo uno spazio di fronte al “curl”. Se non si utilizza la barra spaziatrice per il prefisso del comando, è probabile che si desideri svuotare la cronologia dei comandi in un secondo momento per essere sicuri.

Protocolli e utilizzo supportati Oltre HTTP e FTP

Come accennato in precedenza, l’utilizzo di cURL va ben oltre HTTP e FTP, in quanto la pagina di manuale di arricciatura cita ulteriori protocolli nella descrizione:

arricciare è uno strumento per trasferire dati da o verso un server, usando uno dei
protocolli supportati (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP,
IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS,
TELNET e TFTP).

Inoltre, scoprirai che l’arricciatura può essere utilizzata anche per richieste PUT e POST, cookie, proxy, tunnel, riprendi download e persino acquisendo informazioni sull’intestazione HTTP o modificando un agente utente (efficacemente spoofing) senza la necessità di utilizzare un Web dedicato browser.

Come la maggior parte delle utilità della riga di comando, puoi imparare molto di più sul ricciolo evocando la pagina man appropriata con il comando ‘man curl’.

Like this post? Please share to your friends: