La maggior parte degli amministratori di sistema e anche alcuni degli utenti standard preferiscono la riga di comando per le loro attività quotidiane come la modifica e l'eliminazione di file, la creazione e la rimozione di utenti, la ricerca di indirizzi IP, ecc. Uno dei motivi è perché la riga di comando è più veloce e utilizza meno risorse. Un'altra cosa che gli utenti fanno frequentemente è scaricare un file. Possono anche farlo facilmente e più rapidamente utilizzando la riga di comando. Wget e curl sono le utilità della riga di comando che ti consentono di scaricare file dalla riga di comando.
In questo post descriveremo come utilizzare le utilità wget e curl per scaricare un file su Ubuntu dalla riga di comando.
Nota :Descriveremo la procedura su Ubuntu 20.04 sistema.
Scarica file utilizzando Wget
Wget è uno strumento da riga di comando utilizzato per scaricare file dal web. Usando wget, puoi scaricare un singolo file HTML o un intero sito web. Supporta il download di file utilizzando i protocolli HTTP, HTTPS e FTP. Viene installato su quasi tutti i sistemi operativi Linux. Tuttavia, se non riesci a trovarlo nel tuo sistema o è stato rimosso per errore, puoi installarlo come segue:
$ sudo apt install wget
La sintassi di base del comando wget è la seguente:
$ wget [option]… [URL]…
Scarica un file dalla riga di comando
Per scaricare un file dalla riga di comando, digita semplicemente wget seguito dall'URL del file che desideri scaricare. Diciamo che per scaricare "vnstat-2.6.tar.gz" un pacchetto di monitoraggio del traffico di rete da un sito Web, il comando sarebbe:
$ wget https://humdi.net/vnstat/vnstat-2.6.tar.gz
Wget inizierà a scaricare il file e vedrai i progressi. Il file verrà salvato nella directory corrente del tuo Terminale.
Riprendi un file parzialmente scaricato
Se un download viene interrotto per qualsiasi motivo o lo hai interrotto manualmente premendo Ctrl+C, puoi riprenderlo usando il comando wget -c opzione. Questa opzione ti consente di continuare un file parzialmente scaricato da dove lo avevi interrotto.
$ wget -c <URL>
Disattiva output dettagliato
Per impostazione predefinita, il wget visualizza l'output dettagliato che mostra tutti i dettagli del processo di download. Se vuoi, puoi limitare questo output usando wget -nv opzione.
$wget -nv <URL>
Questa opzione mostra solo le informazioni di base del processo di download.
Per disattivare completamente l'output dettagliato, usa -q opzione:
$ wget -q <URL>
Scarica più file
Per scaricare più file, digita wget seguito dagli URL di tutti i file.
$ wget <URL1> <URL2>
Il comando wget scaricherà entrambi i file e li salverà nella directory del Terminale corrente.
Un altro modo per scaricare più file è utilizzare wget -i opzione. Diciamo che devi scaricare un gran numero di file. Tutto ciò che serve è creare un file di testo ed elencare tutti gli URL in questo file (un URL per riga). Quindi digita wget seguito da -i opzione e il nome del file contenente un elenco di URL:
$ wget -i <filename>
Nota :Nell'output sopra, abbiamo usato -nv opzione per disattivare l'output dettagliato.
Scarica file utilizzando Curl
Curl è uno strumento da riga di comando utilizzato per scaricare e caricare file da o verso il server. Supporta oltre 20 protocolli inclusi FTP, HTTP, HTTPS, TFTP, IMAP, LDAP, ecc
Curl viene installato su quasi tutti i sistemi operativi Linux. Tuttavia, se non riesci a trovarlo nel tuo sistema o è stato rimosso per errore, puoi installarlo come segue:
$ sudo apt install curl
La sintassi di base del comando curl è la seguente:
$ curl [option]… [URL]…
Utilizzo di base del comando curl
L'uso di base del comando curl consiste nel scaricare un singolo file o il contenuto di una pagina web. Diciamo che per scaricare una pagina web “index.html”, digitiamo curl seguito dall'URL della pagina web:
$ curl <URL>
Questo comando scaricherà il file specificato nella directory corrente.
Dopo aver eseguito il comando curl sopra, vedrai il contenuto HTML visualizzato sullo schermo in modo simile al seguente:
Salva il contenuto della pagina in un file
Puoi scaricare e salvare il contenuto di una pagina in un file invece di visualizzarlo sullo schermo. Per salvare il file sul tuo sistema, usa il comando curl -O o -o opzione. Il -O l'opzione salva il file con lo stesso nome del file nella posizione remota. Mentre il -o l'opzione consente di salvare il file con un nome diverso.
Utilizzo dell'opzione -O
Con il -O opzione, non è necessario specificare il nome del file. Salverà il file nel tuo sistema con il nome del file nella posizione remota.
$ curl -O <URL>
Ad esempio, il comando seguente salverà il file con il nome “index.html”:
$ curl -O https://www.cisco.com/c/en/us/support/switches/index.html
Utilizzo dell'opzione -o
Con il -o opzione, puoi specificare un nome file a tua scelta.
$ curl -o filename <URL>
Ad esempio, il comando seguente salverà il file con il nome “switches.html”:
$ curl -o switches.html https://www.cisco.com/c/en/us/support/switches/index.html
Esegui curl in silenzio
Se non desideri visualizzare alcuna barra di avanzamento o alcun messaggio di errore durante il processo di download di curl, puoi renderlo silenzioso utilizzando i -s opzione come segue:
$ curl -s <URL>
Scarica più file
Per scaricare più file, digita curl seguito dagli URL di tutti i file:
$ curl -O [URL1] -O [URL2] -O [URL3]….
Questo comando salverà tutti i file nella directory del Terminale corrente.
Se sono presenti troppi URL da scaricare, crea un file di testo ed elenca gli URL in esso contenuti.
Quindi per scaricare tutti gli URL elencati nel file, utilizzare il seguente comando:
$ xargs -n 1 curl -O < filename
È quindi possibile utilizzare ls comando per confermare se tutti i file sono stati scaricati.
Riprendi un file parzialmente scaricato
Se un download viene interrotto per qualsiasi motivo o lo hai interrotto manualmente premendo Ctrl+C, puoi riprenderlo usando il comando curl “-C – " opzione. Questa opzione ti consente di continuare un file scaricato parzialmente da dove lo avevi interrotto.
$ curl -C - <URL>
Sia wget che curl sono utilità da riga di comando gratuite e open source utilizzate per il download non interattivo di file. Ricorda, sebbene entrambe le utility possano scaricare file dal web; differiscono molto in termini di funzionalità. Puoi visitare le pagine man di wget e curl per una panoramica dettagliata di ciò di cui sono capaci queste utilità.