Usa il comando wget in Linux
-
Controlla se
wgetè installato o meno -
Sintassi del comando
wget -
Scarica file con
wget -
Salvare il file scaricato utilizzando
wgetcon un nome file personalizzato -
Salvare il file scaricato utilizzando
wgetin una directory specifica -
Specificare la velocità di download utilizzando
wget -
Riprendi il download utilizzando
wget -
Scarica file in background utilizzando
wget -
Cambiare lo User-Agent di
wget -
Scarica più file contemporaneamente utilizzando
wget -
Scarica i file usando il comando
wgettramite FTP -
Crea una copia del sito web usando
wget - Salta il controllo del certificato durante l’utilizzo di Wget
Possiamo usare il comando wget in Linux per scaricare file da Internet utilizzando i protocolli HTTP, HTTPS e FTP con varie opzioni come il download di più file contemporaneamente, il download in background, la limitazione della larghezza di banda e molto altro.
Controlla se wget è installato o meno
Possiamo controllare se wget è installato o meno nel nostro sistema semplicemente inserendo il comando wget nel nostro terminale.
Se wget è installato nel nostro sistema, otteniamo un output come:
wget: missing URL
Usage: wget [OPTION]... [URL]...
Try 'wget --help' for more options.
Se wget non è installato nel nostro sistema, otteniamo un output come:
Command 'wget' not found, but can be installed with:
sudo snap install wget
Se wget non è installato nel nostro sistema, possiamo installarlo utilizzando i seguenti comandi:
Installa wget per Ubuntu e Debian
sudo apt install wget
Installa wget per CentOS e Fedora
sudo yum install wget
Sintassi del comando wget
wget [options] [url]
options sono varie opzioni disponibili per personalizzare il processo di download e url si riferisce all url da cui il file deve essere scaricato o sincronizzato.
Scarica file con wget
Per scaricare un file usando il comando wget, specifichiamo semplicemente l’URL del repository di file dopo wget.
wget https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
Produzione:
--2020-09-28 19:29:15-- https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
Resolving bloximages.newyork1.vip.townnews.com (bloximages.newyork1.vip.townnews.com)... 104.18.130.43, 104.18.131.43
Connecting to bloximages.newyork1.vip.townnews.com (bloximages.newyork1.vip.townnews.com)|104.18.130.43|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 33241 (32K) [image/jpeg]
Saving to: '5ca13d8453042.image.jpg'
5ca13d8453042.image 100%[===================>] 32.46K --.-KB/s in 0.003s
2020-09-28 19:29:15 (11.1 MB/s) - '5ca13d8453042.image.jpg' saved [33241/33241]
Scarica il file immagine all’URL specificato e quindi salva il file scaricato nella nostra directory di lavoro corrente.
Il comando inizialmente risolve l’indirizzo IP dell’URL e quindi avvia il download. Possiamo anche vedere la barra di avanzamento del download nel terminale.
Se non vogliamo vedere alcun output nel terminale, possiamo usare l’opzione -q con il comando wget.
Salvare il file scaricato utilizzando wget con un nome file personalizzato
Per impostazione predefinita, il nome del file scaricato è lo stesso che era sul web. Se vogliamo salvare il file con un nome di file diverso, possiamo specificare il nome del file dopo il flag -O.
wget -O linux.jpg https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
Salva il file scaricato nella nostra directory di lavoro corrente con il nome del file linux.jpg.
Salvare il file scaricato utilizzando wget in una directory specifica
Per impostazione predefinita, tutti i file scaricati vengono salvati nella directory di lavoro corrente. Per salvare i file scaricati in una directory specifica, usiamo l’opzione -P seguita dalla posizione della directory in cui il file scaricato deve essere salvato.
wget -P Downloads/Linux_Images https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
Salva l’immagine scaricata nella directory Linux_Images all’interno della directory Downloads.
Specificare la velocità di download utilizzando wget
Se non vogliamo usare tutta la larghezza di banda disponibile per scaricare file usando wget, possiamo usare l’opzione --limit-rate per limitare la velocità di download dei file.
wget -P --limit-rate=5m https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
Limita la velocità di download a 5 MB.
Riprendi il download utilizzando wget
Se la nostra connessione Internet si interrompe improvvisamente durante il download di un grande, scaricare di nuovo il file dall’inizio sarebbe un compito noioso. In questi casi, possiamo riprendere il download utilizzando l’opzione -c.
wget -c https://bloximages.newyork1.vip.townnews.com/redandblack.com/content/tncms/assets/v3/editorial/4/59/45940eb2-5403-11e9-a843-db0e4491cc90/5ca13d8453042.image.jpg
In alcuni casi, il server potrebbe non supportare la ripresa dei download e, in tal caso, il download inizierà dall’inizio.
Scarica file in background utilizzando wget
Per scaricare file in background usando wget, aggiungiamo l’opzione -b al comando.
wget -b https://releases.ubuntu.com/20.04/ubuntu-20.04.1-desktop-amd64.iso
Scaricherà il file immagine di Ubuntu 20.04 in background.
Per vedere lo stato del download del file, utilizziamo il seguente comando:
tail -f wget-log
Cambiare lo User-Agent di wget
In alcuni casi, il server potrebbe bloccare l’agente utente wget. In questi casi, possiamo emulare un browser diverso utilizzando l’opzione -U.
get --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0" <url>
In questo caso, Mozilla 68 richiederà il file da <url>.
Scarica più file contemporaneamente utilizzando wget
Per scaricare più file usando wget, creiamo un .txt che elenca gli URL per ogni file da scaricare su una riga separata. Quindi usiamo il comando wget con l’opzione -i seguita dal percorso del file contenente gli URL.
wget -i files.txt
Questo scaricherà tutti i file dagli URL specificati nel file files.txt.
Scarica i file usando il comando wget tramite FTP
Per scaricare file usando il comando wget via FTP, specifichiamo il nome utente usando l’opzione --ftp-user e la password usando l’opzione --ftp-password.
wget --ftp-user=username --ftp-password=password <url>
Scarica il file dall’URL specificato utilizzando il protocollo FTP.
Crea una copia del sito web usando wget
Per creare una copia di un sito web usando wget, usiamo l’opzione -m seguita dall’URL di cui si vuole fare la copia.
wget -m https://abc.com
Questo creerà una copia di abc.com scaricando tutti i link interni e i file statici necessari per il rendering del sito web.
Se vogliamo eseguire il sito web scaricato, dobbiamo anche aggiungere le opzioni -k e -p.
wget -m -k -p https://abc.com
Salta il controllo del certificato durante l’utilizzo di Wget
A volte è necessario scaricare un file dall’host senza un certificato SSL valido utilizzando il protocollo HTTPS. In questi casi, usiamo l’opzione --no-check-certificate per saltare i controlli del certificato.
wget --no-check-certificate <url>
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn