{"id":37272,"date":"2023-02-06T09:00:00","date_gmt":"2023-02-06T08:00:00","guid":{"rendered":"https:\/\/supporthost.com\/it\/?p=37272"},"modified":"2025-03-04T11:41:18","modified_gmt":"2025-03-04T10:41:18","slug":"linux-comando-curl","status":"publish","type":"post","link":"https:\/\/supporthost.com\/it\/linux-comando-curl\/","title":{"rendered":"Linux, comando cURL: cos&#8217;\u00e8 e come si usa"},"content":{"rendered":"\n<p>cURL \u00e8 uno strumento open source e gratuito che puoi usare da <strong>linea di comando<\/strong>. In questo tutorial vedremo come usare su Linux il comando cURL per trasmettere dati senza usare il browser.<\/p>\n\n\n\n<p>Tieni presente che sebbene si tratti di un comando da terminale, cURL pu\u00f2 essere usato anche su <strong>macOS <\/strong>e <strong>Windows <\/strong>e in molti casi \u00e8 gi\u00e0 presente e non necessita l&#8217;installazione. <\/p>\n\n\n\n<p>Partiamo da cos&#8217;\u00e8 cURL per poi impararne la <strong>sintassi <\/strong>e vedere <strong>esempi pratici<\/strong> di utilizzo.<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Indice<\/h2><nav><ul><li><a href=\"#cose-c-url\">Cos&#8217;\u00e8 cURL?<\/a><ul><li><a href=\"#sintassi-del-comando-linux-c-url\">Sintassi del comando Linux cURL<\/a><\/li><\/ul><\/li><li><a href=\"#come-usare-c-url-con-esempi\">Come usare cURL (con esempi)<\/a><ul><li><a href=\"#verificare-che-c-url-sia-installato\">Verificare che cURL sia installato<\/a><\/li><li><a href=\"#mostrare-il-contenuto-di-una-pagina-con-c-url\">Mostrare il contenuto di una pagina con cURL<\/a><\/li><li><a href=\"#salvare-il-contenuto-di-una-pagina\">Salvare il contenuto di una pagina<\/a><\/li><li><a href=\"#usare-c-url-per-scaricare-un-file\">Usare cURL per scaricare un file<\/a><\/li><li><a href=\"#far-ripartire-un-download-interrotto\">Far ripartire un download interrotto<\/a><\/li><li><a href=\"#specificare-un-user-agent-diverso-con-c-url\">Specificare un User Agent diverso con cURL<\/a><\/li><li><a href=\"#mostrare-gli-header-http\">Mostrare gli header HTTP<\/a><\/li><li><a href=\"#seguire-i-reindirizzamenti\">Seguire i reindirizzamenti<\/a><\/li><li><a href=\"#usare-lautenticazione-http-con-c-url\">Usare l&#8217;autenticazione HTTP con cURL<\/a><\/li><li><a href=\"#inviare-una-richiesta-post-con-c-url\">Inviare una richiesta POST con cURL<\/a><\/li><li><a href=\"#vedere-la-lista-dei-file-sul-server-ftp\">Vedere la lista dei file sul server (FTP)<\/a><\/li><li><a href=\"#scaricare-un-file-via-ftp\">Scaricare un file via FTP<\/a><\/li><li><a href=\"#caricare-un-file-via-ftp\">Caricare un file via FTP<\/a><\/li><\/ul><\/li><li><a href=\"#conclusioni-e-altre-risorse\">Conclusioni e altre risorse<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"538\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo-1024x538.png\" alt=\"Linux Comando Curl Guida Su Come Usarlo\" class=\"wp-image-37306\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo-1024x538.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo-300x158.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo-768x403.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo-120x63.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-guida-su-come-usarlo.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cose-c-url\">Cos&#8217;\u00e8 cURL?<\/h2>\n\n\n\n<p>cURL \u00e8 uno strumento da<strong> linea di comando<\/strong> con cui si pu\u00f2 comunicare con il server senza dover utilizzare un browser.<\/p>\n\n\n\n<p>Gli utilizzi pi\u00f9 comuni di questo strumento sono:<\/p>\n\n\n\n<ul>\n<li>testare il funzionamento delle API;<\/li>\n\n\n\n<li>visualizzare gli header HTTP;<\/li>\n\n\n\n<li>inviare richieste HTTP;<\/li>\n\n\n\n<li>trasferire dati da o verso un server.<\/li>\n<\/ul>\n\n\n\n<p>Il nome &#8220;cURL&#8221; richiama esattamente la sua funzione.<\/p>\n\n\n\n<p>La &#8220;<em>c<\/em>&#8221; rappresenta il fatto che si tratta di un programma lato client, mentre &#8220;<em>URL<\/em>&#8221; indica proprio che esso lavora con gli <a href=\"https:\/\/supporthost.com\/it\/url\/\">URL<\/a> inviando e scaricando dati da URL.<\/p>\n\n\n\n<p>Su Linux il comando cURL serve a richiamare questo strumento che si utilizza esclusivamente da linea di comando e non ha un&#8217;interfaccia grafica (GUI). Se si vuole integrare lo strumento all&#8217;interno di un altro programma si possono utilizzare le librerie <em>libcurl<\/em>. <\/p>\n\n\n\n<p>Ecco l&#8217;elenco completo dei protocolli supportati da cURL attualmente:<\/p>\n\n\n\n<ul>\n<li>DICT<\/li>\n\n\n\n<li>FILE<\/li>\n\n\n\n<li>FTP<\/li>\n\n\n\n<li>FTPS<\/li>\n\n\n\n<li>GOPHER<\/li>\n\n\n\n<li>GOPHERS<\/li>\n\n\n\n<li>HTTP<\/li>\n\n\n\n<li>HTTPS<\/li>\n\n\n\n<li>IMAP<\/li>\n\n\n\n<li>IMAPS<\/li>\n\n\n\n<li>LDAP<\/li>\n\n\n\n<li>LDAPS<\/li>\n\n\n\n<li>MQTT<\/li>\n\n\n\n<li>POP3<\/li>\n\n\n\n<li>POP3S<\/li>\n\n\n\n<li>RTMP<\/li>\n\n\n\n<li>RTSP<\/li>\n\n\n\n<li>SCP<\/li>\n\n\n\n<li>SFTP<\/li>\n\n\n\n<li>SMB<\/li>\n\n\n\n<li>SMBS<\/li>\n\n\n\n<li>SMTP<\/li>\n\n\n\n<li>SMTPS<\/li>\n\n\n\n<li>TELNET<\/li>\n\n\n\n<li>TFTP<\/li>\n\n\n\n<li>WS<\/li>\n\n\n\n<li>WSS.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"sintassi-del-comando-linux-c-url\">Sintassi del comando Linux cURL<\/h3>\n\n\n\n<p>Prima di andare a vedere degli <strong>esempi <\/strong>dell&#8217;uso di cURL, partiamo dal principio e iniziamo a capire come si usa questo comando.<\/p>\n\n\n\n<p>La sintassi base del comando \u00e8 la seguente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl &#091;parametri] &#091;URL]<\/code><\/pre>\n\n\n\n<p>I parametri possono essere un&#8217;opzione, come per esempio &#8220;<code>-h<\/code>&#8221; per mostrare degli aiuti. Oppure combinazioni di pi\u00f9 opzioni.<\/p>\n\n\n\n<p class=\"note\">Se non hai molta familiarit\u00e0 con il terminale, ti suggeriamo di leggere prima la nostra guida ai <a href=\"https:\/\/supporthost.com\/it\/comandi-linux\/\">comandi Linux<\/a> in modo da acquisire le conoscenze di base.<\/p>\n\n\n\n<p>Come per gli altri comandi da terminale, anche nel caso di cURL \u00e8 possibile utilizzare le opzioni in due modi.<\/p>\n\n\n\n<ul>\n<li>Versione abbreviata delle opzioni: per esempio &#8220;<code>-v<\/code>&#8220;. Ricordati che viene sempre preceduta da un solo trattino (&#8220;-&#8220;).<\/li>\n\n\n\n<li>Versione estesa delle opzioni: come ad esempio &#8220;<code>--verbose<\/code>&#8220;. In questo caso l&#8217;opzione deve essere preceduta da due trattini (&#8220;&#8211;&#8220;).<\/li>\n<\/ul>\n\n\n\n<p class=\"note\">Ricordati che le opzioni sono <em>case sensitive<\/em>, prova a usare &#8220;<code>-V<\/code>&#8221; invece di &#8220;<code>-v<\/code>&#8221; e avrai due output differenti. Nel caso di cURL &#8220;<code>-v<\/code>&#8221; \u00e8 l&#8217;abbreviazione di &#8220;<code>--verbose<\/code>&#8221; e ci dar\u00e0 pi\u00f9 informazioni sulle operazioni eseguite, mentre &#8220;<code>-V<\/code>&#8221; indica &#8220;<code>--version<\/code>&#8221; e ci mostrer\u00e0 quale versione dello strumento \u00e8 installata sul nostro sitema.<\/p>\n\n\n\n<p>Grazie agli esempi che vedremo in questo articolo, imparerai a usare alcune delle opzioni di cURL. Considera che questo comando ha pi\u00f9 di <strong>200 opzioni<\/strong>, per cui non potremo esaminarle tutte.<\/p>\n\n\n\n<p>Per vedere una lista delle opzioni pi\u00f9 comuni puoi usare l&#8217;opzione &#8220;<code>--help<\/code>&#8220;, cos\u00ec:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --help<\/code><\/pre>\n\n\n\n<p>Il risultato sar\u00e0 come questo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"688\" height=\"369\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-opzione-help.png\" alt=\"Linux Comando Curl Opzione Help\" class=\"wp-image-37295\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-opzione-help.png 688w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-opzione-help-300x161.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/linux-comando-curl-opzione-help-117x63.png 117w\" sizes=\"auto, (max-width: 688px) 100vw, 688px\" \/><\/figure>\n\n\n\n<p>Si tratta solo delle opzioni pi\u00f9 comuni, mentre se vuoi avere una lista completa ti basta dare questo comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --help all<\/code><\/pre>\n\n\n\n<p>In questo caso vedrai tutte le opzioni accompagnate sempre da una breve spiegazione.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"932\" height=\"936\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all.png\" alt=\"Curl Comando Linux Opzione Help All\" class=\"wp-image-37274\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all.png 932w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all-300x300.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all-150x150.png 150w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all-768x771.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-comando-linux-opzione-help-all-63x63.png 63w\" sizes=\"auto, (max-width: 932px) 100vw, 932px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"come-usare-c-url-con-esempi\">Come usare cURL (con esempi)<\/h2>\n\n\n\n<p>In questa sezione del nostro tutorial su come utilizzare cURL impareremo la sintassi di base delle opzioni e vedremo come eseguire alcune operazioni utili.<\/p>\n\n\n\n<p>Dopo che avrai imparato a usare il comando cURL con questi esempi pratici, potrai sfruttare le opzioni per i tuoi test.<\/p>\n\n\n\n<p>Nello specifico andremo a vedere:<\/p>\n\n\n\n<ul>\n<li><strong>pagine web<\/strong>: come mostrarle in HTML e salvare il contenuto;<\/li>\n\n\n\n<li><strong>file<\/strong>: come scaricarli e riprendere i download interrotti;<\/li>\n\n\n\n<li><strong>user agent<\/strong>: come emulare un user agent diverso;<\/li>\n\n\n\n<li><strong>header HTTP<\/strong>: come mostrarli da linea di comando;<\/li>\n\n\n\n<li><strong>reindirizzamenti<\/strong>: come far s\u00ec che cURL segua i redirect;<\/li>\n\n\n\n<li>pagine protette da <strong>password<\/strong>: come si usa l&#8217;autenticazione HTTP;<\/li>\n\n\n\n<li>richieste <strong>POST<\/strong>: come si fa una richiesta con lo strumento;<\/li>\n\n\n\n<li><strong>FTP<\/strong>: come vedere la lista dei file nelle directory, caricare e scaricare file via FTP.<\/li>\n<\/ul>\n\n\n\n<p>Si tratta di uno strumento molto utile da sfruttare sulle macchine virtuali e sui server. Con SupportHost troverai cURL gi\u00e0 installato se scegli un qualsiasi piano hosting o una soluzione dedicata come un <a href=\"https:\/\/supporthost.com\/it\/server-dedicati\/\" data-type=\"page\" data-id=\"17295\">server dedicato<\/a> o un piano <a href=\"https:\/\/supporthost.com\/it\/vps-cloud-hosting\/\" data-type=\"page\" data-id=\"17283\">VPS cloud hosting<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"verificare-che-c-url-sia-installato\">Verificare che cURL sia installato<\/h3>\n\n\n\n<p class=\"note\">Nella maggior parte delle distribuzioni Linux, su macOS e su Windows 10 cURL \u00e8 gi\u00e0 installato.<\/p>\n\n\n\n<p>Prima di iniziare a usarlo, possiamo assicurarci in maniera molto veloce che sia installato. Per farlo ci basta aprire il terminale (o anche il prompt dei comandi nel caso di Windows) e scrivere:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl<\/code><\/pre>\n\n\n\n<p>Se lo strumento \u00e8 presente, l&#8217;output che vedremo sar\u00e0 il seguente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl: try 'curl --help' for more information<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"423\" height=\"62\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/verifica-installazione-curl-terminale.png\" alt=\"Verifica Installazione Curl Terminale\" class=\"wp-image-37275\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/verifica-installazione-curl-terminale.png 423w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/verifica-installazione-curl-terminale-300x44.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/verifica-installazione-curl-terminale-120x18.png 120w\" sizes=\"auto, (max-width: 423px) 100vw, 423px\" \/><\/figure>\n\n\n\n<p>Se il programma non fosse presente ti baster\u00e0 installarlo. Il comando da usare per l&#8217;installazione dipende dal sistema operativo e dalla distribuzione che stai usando. <\/p>\n\n\n\n<p>Se non sai come fare in fondo a questa guida troverai i collegamenti al manuale che comprendono anche le indicazioni specifiche sull&#8217;installazione.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mostrare-il-contenuto-di-una-pagina-con-c-url\">Mostrare il contenuto di una pagina con cURL<\/h3>\n\n\n\n<p>L&#8217;utilizzo di base di cURL \u00e8 quello di reperire i dati dall&#8217;URL che gli forniamo.<\/p>\n\n\n\n<p>Diamo il comando seguito dall&#8217;URL, in questo modo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl https:\/\/supporthost.com\/<\/code><\/pre>\n\n\n\n<p>Ci verr\u00e0 mostrato sul terminale il <strong>codice sorgente<\/strong> della pagina richiesta, nell&#8217;esempio qui sopra dell&#8217;home page del nostro sito.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"289\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-1024x289.png\" alt=\"Comando Curl Url Supporthost\" class=\"wp-image-37276\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-1024x289.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-300x85.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-768x217.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-120x34.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost-1536x433.png 1200w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/comando-curl-url-supporthost.png 1588w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"salvare-il-contenuto-di-una-pagina\">Salvare il contenuto di una pagina<\/h3>\n\n\n\n<p>Possiamo utilizzare un&#8217;opzione del comando cURL per <strong>salvare <\/strong>il contenuto di un URL, per esempio una pagina web in un file.<\/p>\n\n\n\n<p>Sintassi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -O &#091;URL]<\/code><\/pre>\n\n\n\n<p>Esempio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -O https:\/\/supporthost.com\/<\/code><\/pre>\n\n\n\n<p>L&#8217;opzione &#8220;-O&#8221; ci consente di utilizzare il nome del file che viene usato sul server. Nel caso di una pagina web, come l&#8217;esempio che abbiamo appena visto, il programma ci restituir\u00e0 un errore come questo &#8220;Remote file name has no lenght&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"548\" height=\"74\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-file-name-lenght-curl.png\" alt=\"Errore File Name Lenght Curl\" class=\"wp-image-37277\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-file-name-lenght-curl.png 548w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-file-name-lenght-curl-300x41.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-file-name-lenght-curl-120x16.png 120w\" sizes=\"auto, (max-width: 548px) 100vw, 548px\" \/><\/figure>\n\n\n\n<p>In questo caso, infatti, dobbiamo specificare noi il nome del file. Per farlo ci basta usare questo comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -o homepage-supporthost.html https:\/\/supporthost.com\/<\/code><\/pre>\n\n\n\n<p>La sintassi del comando da usare \u00e8 questa:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -o nome-file.html https:\/\/sito.com\/<\/code><\/pre>\n\n\n\n<p>Questo sar\u00e0 il risultato che ci viene mostrato.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"737\" height=\"106\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/salvare-pagina-web-con-curl.png\" alt=\"Salvare Pagina Web Con Curl\" class=\"wp-image-37278\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/salvare-pagina-web-con-curl.png 737w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/salvare-pagina-web-con-curl-300x43.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/salvare-pagina-web-con-curl-120x17.png 120w\" sizes=\"auto, (max-width: 737px) 100vw, 737px\" \/><\/figure>\n\n\n\n<p class=\"note\">Nota: in questo caso il file viene salvato nel percorso in cui ci troviamo, nel nostro esempio &#8220;C:\\Users\\Fabrizio\\&#8221;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"usare-c-url-per-scaricare-un-file\">Usare cURL per scaricare un file<\/h3>\n\n\n\n<p>Nell&#8217;esempio che abbiamo appena visto, abbiamo usato cURL per scaricare il contenuto di una pagina sul nostro computer.<\/p>\n\n\n\n<p>Conoscendo l&#8217;URL, possiamo utilizzare lo stesso comando per <strong>scaricare un file<\/strong>.<\/p>\n\n\n\n<p>Ci basta procedere esattamente come abbiamo visto prima, vediamolo di nuovo con un esempio.<\/p>\n\n\n\n<p>Trattandosi di un file, in questo caso non abbiamo il problema che abbiamo visto prima perch\u00e9 il file avr\u00e0 gi\u00e0 un nome sul server. In questo caso, quindi, possiamo usare una delle due opzioni:<\/p>\n\n\n\n<ul>\n<li><code>-O<\/code> se vogliamo che il file che scarichiamo abbia lo stesso nome di quello sul server;<\/li>\n\n\n\n<li><code>-o<\/code> se vogliamo specificare un nome diverso.<\/li>\n<\/ul>\n\n\n\n<p>Ecco i due esempi.<\/p>\n\n\n\n<p>Vogliamo scaricare il logo di cPanel da Wikipedia e salvarlo con lo stesso nome che ha sul server &#8220;Cpanel_logo.svg&#8221;. Usiamo il comando seguente con l&#8217;opzione &#8220;-O&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"832\" height=\"95\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file.png\" alt=\"Curl Salvare File\" class=\"wp-image-37279\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file.png 832w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-300x34.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-768x88.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-120x14.png 120w\" sizes=\"auto, (max-width: 832px) 100vw, 832px\" \/><\/figure>\n\n\n\n<p>Scarichiamo lo stesso logo, ma questa volta diamogli il nome &#8220;cpanel.svg&#8221;, usando questo comando con l&#8217;opzione &#8220;-o&#8221; seguita dal nome:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"934\" height=\"100\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-con-nome-diverso.png\" alt=\"Curl Salvare File Con Nome Diverso\" class=\"wp-image-37280\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-con-nome-diverso.png 934w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-con-nome-diverso-300x32.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-con-nome-diverso-768x82.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-salvare-file-con-nome-diverso-120x13.png 120w\" sizes=\"auto, (max-width: 934px) 100vw, 934px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"far-ripartire-un-download-interrotto\">Far ripartire un download interrotto<\/h3>\n\n\n\n<p>Se abbiamo iniziato a scaricare un file con cURL e il download \u00e8 stato interrotto, possiamo riprendere a scaricarlo usando l&#8217;opzione &#8220;-C&#8221; in questo modo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -C - -O &#091;percorsodelfile]<\/code><\/pre>\n\n\n\n<p>Questa opzione \u00e8 utile per download di grandi dimensioni perch\u00e9 ci permette di riprendere da dove \u00e8 stato interrotto anzich\u00e9 dover ricominciare da zero.<\/p>\n\n\n\n<p>Pu\u00f2 essere utilizzata anche per riprendere un download con il protocollo FTP. In quest&#8217;ultimo caso la sintassi da usare sar\u00e0 la seguente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -C - -O ftp:\/\/&#091;percorsodelfile]<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"specificare-un-user-agent-diverso-con-c-url\">Specificare un User Agent diverso con cURL<\/h3>\n\n\n\n<p>Per impostazione predefinita cURL user\u00e0 il suo User Agent vale a dire:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>User-Agent: curl\/&#091;version]<\/code><\/pre>\n\n\n\n<p>Per esempio con la versione che abbiamo usato per i nostri esempi, 7.83.1, l&#8217;User agent sar\u00e0:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>User-Agent: curl\/7.83.1<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"613\" height=\"226\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/user-agent-default-curl.png\" alt=\"User Agent Default Curl\" class=\"wp-image-37281\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/user-agent-default-curl.png 613w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/user-agent-default-curl-300x111.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/user-agent-default-curl-120x44.png 120w\" sizes=\"auto, (max-width: 613px) 100vw, 613px\" \/><\/figure>\n\n\n\n<p>Per impostare un User Agent diverso possiamo usare l&#8217;opzione &#8220;-A&#8221; seguita dalla stringa che identifica l&#8217;User Agent che vogliamo usare, con questa sintassi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -A &#091;\"User Agent\"] &#091;URL]<\/code><\/pre>\n\n\n\n<p>Ecco un esempio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/108.0.0.0 Safari\/537.36\" https:\/\/google.com\/<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mostrare-gli-header-http\">Mostrare gli header HTTP<\/h3>\n\n\n\n<p>Come abbiamo visto nel primo esempio, quando usiamo il comando cURL seguito dall&#8217;URL ci viene mostrata la <strong>versione HTML<\/strong> della pagina.<\/p>\n\n\n\n<p>In questo caso, per\u00f2, non ci vengono fatti vedere gli header HTTP della pagina.<\/p>\n\n\n\n<p>Per visualizzare solo gli header (senza il contenuto della pagina), possiamo usare questo comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -I &#091;URL]<\/code><\/pre>\n\n\n\n<p>Per esempio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -I https:\/\/supporthost.com\/<\/code><\/pre>\n\n\n\n<p>Ci mostrer\u00e0 l&#8217;header HTTP dell&#8217;home page del nostro sito.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1023\" height=\"355\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-pagina-con-curl.png\" alt=\"Header Http Pagina Con Curl\" class=\"wp-image-37282\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-pagina-con-curl.png 1023w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-pagina-con-curl-300x104.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-pagina-con-curl-768x267.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-pagina-con-curl-120x42.png 120w\" sizes=\"auto, (max-width: 1023px) 100vw, 1023px\" \/><\/figure>\n\n\n\n<p>Se, invece, volessimo visualizzare sia la versione HTML della pagina che l&#8217;header HTTP, potremmo usare questo comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -i https:\/\/supporthost.com\/<\/code><\/pre>\n\n\n\n<p>In questo modo ci verr\u00e0 mostrato l&#8217;header HTTP seguito dal codice sorgente della pagina.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"477\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl-1024x477.png\" alt=\"Header Http E Pagina Html Con Curl\" class=\"wp-image-37283\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl-1024x477.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl-300x140.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl-768x358.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl-120x56.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/header-http-e-pagina-html-con-curl.png 1522w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"seguire-i-reindirizzamenti\">Seguire i reindirizzamenti<\/h3>\n\n\n\n<p>Se proviamo a dare il comando cURL seguito da un URL che viene reindirizzato verso un altro indirizzo, lo strumento non ci restituir\u00e0 nessun risultato.<\/p>\n\n\n\n<p>Di default, infatti, cURL non segue in automatico i reindirizzamenti.<\/p>\n\n\n\n<p>Per capire se quell&#8217;URL viene effettivamente reindirizzato altrove, possiamo visualizzare l&#8217;header HTTP (con l&#8217;opzione <code>-I<\/code> come abbiamo visto prima). Ecco l&#8217;output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1019\" height=\"429\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina.png\" alt=\"Curl Reindirizzamento Pagina\" class=\"wp-image-37284\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina.png 1019w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-300x126.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-768x323.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-120x51.png 120w\" sizes=\"auto, (max-width: 1019px) 100vw, 1019px\" \/><\/figure>\n\n\n\n<p>Come vedi in questo esempio nel valore &#8220;location&#8221; ci viene indicata la pagina verso cui punta il <a href=\"https:\/\/supporthost.com\/it\/redirect-301\/\" data-type=\"post\" data-id=\"18474\">redirect 301<\/a>.<\/p>\n\n\n\n<p>A questo punto, se vogliamo che cURL segua il reindirizzamento dobbiamo utilizzare l&#8217;opzione &#8220;&#8211;location&#8221;.<\/p>\n\n\n\n<p>Nel nostro esempio abbiamo utilizzato anche l&#8217;opzione -I per vedere solo gli header HTTP anzich\u00e9 mostrare anche il codice sorgente. Questo \u00e8 l&#8217;output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1020\" height=\"762\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-con-location.png\" alt=\"Curl Reindirizzamento Pagina Con Location\" class=\"wp-image-37285\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-con-location.png 1020w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-con-location-300x224.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-con-location-768x574.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/curl-reindirizzamento-pagina-con-location-84x63.png 84w\" sizes=\"auto, (max-width: 1020px) 100vw, 1020px\" \/><\/figure>\n\n\n\n<p>Come puoi vedere il primo codice di risposta HTTP \u00e8 &#8220;<em>301 Moved Permanently<\/em>&#8221; che ci dice che la risorsa \u00e8 stata spostata. In &#8220;location&#8221; possiamo vedere l&#8217;indirizzo di destinazione. <\/p>\n\n\n\n<p>Il secondo codice HTTP \u00e8 &#8220;<em>200 OK<\/em>&#8220;, questo ci fa capire che il secondo URL visitato ha restituito un codice 200.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"usare-lautenticazione-http-con-c-url\">Usare l&#8217;autenticazione HTTP con cURL<\/h3>\n\n\n\n<p>Quando bisogna accedere ad URL protetti da credenziali (nome utente e password), si possono inviare i dati di accesso con il comando cURL.<\/p>\n\n\n\n<p>Se il sistema di autenticazione usato \u00e8 <em>basic access authentication<\/em> baster\u00e0 indicare le credenziali in questo modo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password https:\/\/nomesito.com<\/code><\/pre>\n\n\n\n<p>Questo pu\u00f2 essere utile ad esempio per accedere da linea di comando a pagine protette con la protezione htaccess.<\/p>\n\n\n\n<p>Se una pagina \u00e8 protetta da password e tentiamo di accedere senza aver usato l&#8217;opzione &#8220;&#8211;user&#8221; per le credenziali di accesso, potremo vedere ad esempio una pagina di <strong>errore 401<\/strong>, come in questo esempio:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"797\" height=\"318\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-401-curl.png\" alt=\"Errore 401 Curl\" class=\"wp-image-37286\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-401-curl.png 797w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-401-curl-300x120.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-401-curl-768x306.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/errore-401-curl-120x48.png 120w\" sizes=\"auto, (max-width: 797px) 100vw, 797px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"inviare-una-richiesta-post-con-c-url\">Inviare una richiesta POST con cURL<\/h3>\n\n\n\n<p>Una nota sull&#8217;uso dei metodi HTTP con cURL: tieni presente che con questo strumento non \u00e8 sempre necessario indicare il metodo HTTP da usare.<\/p>\n\n\n\n<p>In base all&#8217;opzione che stai usando, verr\u00e0 utilizzato il metodo predefinito. Per esempio quando utilizziamo &#8220;<code>-d<\/code>&#8221; verr\u00e0 usato il metodo POST, quando non viene specificato nessun metodo viene usato quello di default, ovvero GET.<\/p>\n\n\n\n<p>Con cURL possiamo inviare una richiesta POST, passando dei dati da inviare ad un URL. L&#8217;opzione &#8220;<code>-d<\/code>&#8221; o &#8220;<code>--data<\/code>&#8221; ci permette di inviare i dati con una richiesta POST.<\/p>\n\n\n\n<p>Sintassi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -d &#091;\"campo=valore\"] &#091;URL]<\/code><\/pre>\n\n\n\n<p>Facciamo un esempio con un ipotetico modulo di contatti con due campi &#8220;nome&#8221; e &#8220;testo&#8221;.<\/p>\n\n\n\n<p>Usando il comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -d \"nome=mario&amp;testo=prova\" https:\/\/esempio.com\/contatti<\/code><\/pre>\n\n\n\n<p>Stiamo inviando questi dati: &#8220;nome=mario&#8221; e &#8220;testo=prova&#8221; alla pagina specificata nell&#8217;URL. Come vedi nell&#8217;esempio per concatenare i dati l&#8217;uno con l&#8217;altro ci basta usare &#8220;&amp;&#8221;.<\/p>\n\n\n\n<p>Il formato da utilizzare sar\u00e0 quindi il seguente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#091;campo1]=&#091;valore1]&amp;&#091;campo2]=&#091;valore2]<\/code><\/pre>\n\n\n\n<p>Proprio come nell&#8217;esempio che abbiamo appena visto.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"vedere-la-lista-dei-file-sul-server-ftp\">Vedere la lista dei file sul server (FTP)<\/h3>\n\n\n\n<p>Tra i protocolli supportati da cURL troviamo anche <strong>FTP<\/strong>. Insieme a SFTP si tratta di un protocollo standard per la trasmissione dei file da e verso un server.<\/p>\n\n\n\n<p>Prima di vedere come trasferire i file da e verso il server con il protocollo FTP con cURL, vediamo un semplice comando che ci permette di visualizzare la lista dei file sul server.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password ftp:\/\/&#091;nomedelserver]<\/code><\/pre>\n\n\n\n<p>Questo comando dar\u00e0 un output simile al seguente:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1021\" height=\"594\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/lista-dei-file-ftp-curl.png\" alt=\"Lista Dei File Ftp Curl\" class=\"wp-image-37287\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/lista-dei-file-ftp-curl.png 1021w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/lista-dei-file-ftp-curl-300x175.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/lista-dei-file-ftp-curl-768x447.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/lista-dei-file-ftp-curl-108x63.png 108w\" sizes=\"auto, (max-width: 1021px) 100vw, 1021px\" \/><\/figure>\n\n\n\n<p>Possiamo visualizzare il contenuto di una cartella specifica inserendo il percorso della cartella per esempio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password ftp:\/\/ftp.sitoesempio.com\/nomecartella\/<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"scaricare-un-file-via-ftp\">Scaricare un file via FTP<\/h3>\n\n\n\n<p>Possiamo usare cURL per collegarci via FTP al server e scaricare un file in locale.<\/p>\n\n\n\n<p>Il comando che si usa ha questa sintassi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password -O ftp:\/\/&#091;percorsodelfile]<\/code><\/pre>\n\n\n\n<p>Stiamo usando una combinazione delle due opzioni che abbiamo visto negli esempi precedenti:<\/p>\n\n\n\n<ul>\n<li>l&#8217;opzione &#8220;&#8211;user&#8221; ci permette di inserire le credenziali di accesso;<\/li>\n\n\n\n<li>l&#8217;opzione &#8220;-O&#8221; indica di scaricare il file mantenendo lo stesso nome che ha sul server.<\/li>\n<\/ul>\n\n\n\n<p>Ecco un esempio in cui abbiamo scaricato un file jpg:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"86\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl-1024x86.png\" alt=\"Scaricare Un File Via Ftp Con Curl\" class=\"wp-image-37288\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl-1024x86.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl-300x25.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl-768x64.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl-120x10.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/scaricare-un-file-via-ftp-con-curl.png 1136w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Ricordati di inserire il nome del server FTP seguito dal percorso completo del file.<\/p>\n\n\n\n<p>Da cPanel puoi recuperare le informazioni sul tuo <a href=\"https:\/\/supporthost.com\/it\/tutorial\/account-ftp\/\" data-type=\"bwl_kb\" data-id=\"18057\">account FTP<\/a> andando su <em>Account FTP &gt; Configura client FTP<\/em> e guardando nella sezione &#8220;Impostazioni manuali&#8221;, come ti mostro qui:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"645\" height=\"181\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/impostazioni-manuali-account-ftp-cpanel.png\" alt=\"Impostazioni Manuali Account Ftp Cpanel\" class=\"wp-image-37289\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/impostazioni-manuali-account-ftp-cpanel.png 645w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/impostazioni-manuali-account-ftp-cpanel-300x84.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/impostazioni-manuali-account-ftp-cpanel-120x34.png 120w\" sizes=\"auto, (max-width: 645px) 100vw, 645px\" \/><\/figure>\n\n\n\n<p>Se il download del file viene interrotto e vuoi riprenderlo dal punto in cui si \u00e8 bloccato, ti basta usare il comando che abbiamo visto prima e che riporto di nuovo qui per maggiore chiarezza:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -C - -O ftp:\/\/&#091;percorsodelfile]<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"caricare-un-file-via-ftp\">Caricare un file via FTP<\/h3>\n\n\n\n<p>Come accennavamo in apertura di questa guida, cURL ci permette di trasferire dati. Usando il protocollo FTP possiamo anche <strong>caricare <\/strong>dei file sul server.<\/p>\n\n\n\n<p>Per farlo bisogner\u00e0 utilizzare l&#8217;opzione &#8220;-T&#8221; cos\u00ec:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password -T &#091;file] ftp:\/\/&#091;percorsodelfile]<\/code><\/pre>\n\n\n\n<p>Ecco un esempio in cui carichiamo un&#8217;immagine:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"85\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl-1024x85.png\" alt=\"Caricare Un File Via Ftp Con Curl\" class=\"wp-image-37290\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl-1024x85.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl-300x25.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl-768x64.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl-120x10.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-un-file-via-ftp-con-curl.png 1086w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>In questo esempio il file che verr\u00e0 caricato sul server avr\u00e0 lo stesso nome del file locale &#8220;image.jpg&#8221;.<\/p>\n\n\n\n<p>Se invece volessimo modificare il nome solo sul server, dovremo indicarlo dopo il percorso, cos\u00ec:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"90\" src=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl-1024x90.png\" alt=\"Caricare E Rinominare Un File Via Ftp Con Curl\" class=\"wp-image-37291\" srcset=\"https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl-1024x90.png 1024w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl-300x26.png 300w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl-768x67.png 768w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl-120x11.png 120w, https:\/\/supporthost.com\/it\/wp-content\/uploads\/sites\/2\/2023\/01\/caricare-e-rinominare-un-file-via-ftp-con-curl.png 1164w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>La sintassi da usare sar\u00e0 questa: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user nome:password -T &#091;file] ftp:\/\/&#091;percorsodelfile\/nuovo-nome-file]<\/code><\/pre>\n\n\n\n<p>Nell&#8217;esempio appena visto, il comando diventa infatti: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl --user user:password -T image.jpg ftp:\/\/ftp.sito.com\/backup\/image2.jpg<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusioni-e-altre-risorse\">Conclusioni e altre risorse<\/h2>\n\n\n\n<p>In questo tutorial su cURL abbiamo visto alcuni degli utilizzi pi\u00f9 comuni. Lo strumento ci pu\u00f2 essere utile in diverse occasioni per trasferire dati, inviare richieste HTTP e per fare dei test.<\/p>\n\n\n\n<p>Grazie agli<strong> esempi pratici <\/strong>che abbiamo visto, ora hai tutte le basi per iniziare a usare il comando cURL. Per approfondire e scoprire altri casi d&#8217;uso, puoi fare affidamento sulla <a href=\"https:\/\/curl.se\/docs\/manual.html\" rel=\"noopener\">guida rapida<\/a> e sulla documentazione dettagliata &#8220;<a href=\"https:\/\/everything.curl.dev\/\" rel=\"noopener\">Everything curl<\/a>&#8220;.<\/p>\n\n\n\n<p>Hai provato a usare cURL seguendo la nostra guida? Facci sapere con un commento.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>cURL \u00e8 uno strumento open source e gratuito che puoi usare da linea di comando. In questo tutorial vedremo come usare su Linux il comando cURL per trasmettere dati senza usare il browser. Tieni presente che sebbene si tratti di un comando da terminale, cURL pu\u00f2 essere usato anche su macOS e Windows e in [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":63752,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[67],"tags":[],"class_list":["post-37272","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux"],"acf":[],"_links":{"self":[{"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/posts\/37272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/comments?post=37272"}],"version-history":[{"count":3,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/posts\/37272\/revisions"}],"predecessor-version":[{"id":71965,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/posts\/37272\/revisions\/71965"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/media\/63752"}],"wp:attachment":[{"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/media?parent=37272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/categories?post=37272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/supporthost.com\/it\/wp-json\/wp\/v2\/tags?post=37272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}