GNU/Linux >> Linux Esercitazione >  >> Linux

Comando Wget in Linux con esempi

GNU Wget è un'utilità da riga di comando per scaricare file dal web. Con Wget, puoi scaricare file utilizzando i protocolli HTTP, HTTPS e FTP. Wget offre una serie di opzioni che ti consentono di scaricare più file, riprendere i download, limitare la larghezza di banda, download ricorsivi, scaricare in background, eseguire il mirroring di un sito Web e molto altro.

Questo articolo mostra come usare il wget comando attraverso esempi pratici e spiegazioni dettagliate delle opzioni più comuni.

Installazione di Wget #

Il pacchetto wget è preinstallato sulla maggior parte delle distribuzioni Linux oggi.

Per verificare se il pacchetto Wget è installato sul tuo sistema, apri la tua console, digita wget e premere invio. Se hai installato wget, il sistema stamperà wget: missing URL . In caso contrario, stamperà wget command not found .

Se wget non è installato, puoi installarlo facilmente usando il gestore di pacchetti della tua distribuzione.

Installazione di Wget su Ubuntu e Debian #

sudo apt install wget

Installazione di Wget su CentOS e Fedora #

sudo yum install wget

Sintassi del comando Wget #

Prima di entrare in come usare il wget comando, iniziamo esaminando la sintassi di base.

Il wget le espressioni di utilità assumono la forma seguente:

wget [options] [url]
  • options - Le opzioni di Wget
  • url - URL del file o della directory che desideri scaricare o sincronizzare.

Come scaricare un file con wget #

Nella sua forma più semplice, se usato senza alcuna opzione, wget scaricherà la risorsa specificata nell'[url] nella directory corrente.

Nell'esempio seguente, stiamo scaricando l'archivio tar del kernel Linux:

wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.2.tar.xz

Come puoi vedere dall'immagine sopra, wget inizia risolvendo l'indirizzo IP del dominio, quindi si connette al server remoto e avvia il trasferimento.

Durante il download, wget mostra la barra di avanzamento insieme al nome del file, alla dimensione del file, alla velocità di download e al tempo stimato per completare il download. Una volta completato il download, puoi trovare il file scaricato nella tua directory di lavoro corrente.

Per disattivare l'output, utilizzare -q opzione.

Se il file esiste già, wget aggiungerà .N (numero) alla fine del nome del file.

Salvataggio del file scaricato con nome diverso #

Per salvare il file scaricato con un nome diverso, passa il -O opzione seguita dal nome scelto:

wget -O latest-hugo.zip https://github.com/gohugoio/hugo/archive/master.zip

Il comando sopra salverà l'ultimo file hugozip da GitHub come latest-hugo.zip invece del suo nome originale.

Download di un file in una specifica directory #

Per impostazione predefinita, wget salverà il file scaricato nella directory di lavoro corrente. Per salvare il file in una posizione specifica, usa il -P opzione:

wget -P /mnt/iso http://mirrors.mit.edu/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso

Il comando sopra dice a wget per salvare il file iso di CentOS 7 in /mnt/iso directory.

Limitazione della velocità di download #

Per limitare la velocità di download, usa il --limit-rate opzione. Per impostazione predefinita, la velocità è misurata in byte/secondo. Aggiungi k per kilobyte, m per megabyte e g per gigabyte.

Il comando seguente scaricherà il binario Go e limiterà la velocità di download a 1 MB:

wget --limit-rate=1m https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz

Questa opzione è utile quando non vuoi wget per consumare tutta la larghezza di banda disponibile.

Ripresa di un download #

Puoi riprendere un download usando il -c opzione. Questo è utile se la tua connessione si interrompe durante il download di un file di grandi dimensioni e invece di iniziare il download da zero, puoi continuare quello precedente.

Nell'esempio seguente, stiamo riprendendo il download del file iso di Ubuntu 18.04:

wget -c http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64.iso

Se il server remoto non supporta la ripresa dei download, wget avvierà il download dall'inizio e sovrascriverà il file esistente.

Download in background #

Per scaricare in background, usa il -b opzione. Nell'esempio seguente, stiamo scaricando il file ISO di OpenSuse in background:

wget -b https://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso

Per impostazione predefinita, l'output viene reindirizzato a wget-log file nella directory corrente. Per controllare lo stato del download, usa il tail comando:

tail -f wget-log

Modifica dell'User-Agent Wget #

A volte, durante il download di un file, il server remoto può essere impostato per bloccare l'User-Agent di Wget. In situazioni come questa, per emulare un browser diverso, passa il -U opzione.

wget --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" http://wget-forbidden.com/

Il comando sopra emulerà Firefox 60 che richiede la pagina da wget-forbidden.com

Download di più file #

Se vuoi scaricare più file contemporaneamente, usa -i opzione seguita dal percorso di un file locale o esterno contenente un elenco degli URL da scaricare. Ogni URL deve trovarsi su una riga separata.

L'esempio seguente mostra come scaricare i file ISO di Arch Linux, Debian e Fedora utilizzando gli URL specificati in linux-distros.txt file:

wget -i linux-distros.txt
linux-distros.txt
http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso
https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.4.0-amd64-netinst.iso
https://download.fedoraproject.org/pub/fedora/linux/releases/28/Server/x86_64/iso/Fedora-Server-dvd-x86_64-28-1.1.iso

Se specifichi - come nome file, gli URL verranno letti dallo standard input.

Download tramite FTP #

Per scaricare un file da un server FTP protetto da password, specifica il nome utente e la password come mostrato di seguito:

wget --ftp-user=FTP_USERNAME --ftp-password=FTP_PASSWORD ftp://ftp.example.com/filename.tar.gz

Creazione di un mirror di un sito web #

Per creare un mirror di un sito web con wget , usa il -m opzione. Ciò creerà una copia locale completa del sito Web seguendo e scaricando tutti i collegamenti interni e le risorse del sito Web (JavaScript, CSS, Immagini).

wget -m https://example.com

Se desideri utilizzare il sito Web scaricato per la navigazione locale, dovrai passare alcuni argomenti extra al comando sopra.

wget -m -k -p https://example.com

Il -k opzione causerà wget per convertire i collegamenti nei documenti scaricati per renderli idonei alla visualizzazione locale. Il -p l'opzione dirà a wget per scaricare tutti i file necessari per visualizzare la pagina HTML.

Salto del controllo del certificato #

Se desideri scaricare un file tramite HTTPS da un host che ha un certificato SSL non valido, usa il --no-check-certificate opzione:

wget --no-check-certificate https://domain-with-invalid-ss.com

Download nell'output standard #

Nell'esempio seguente, wget tranquillamente ( flagga -q ) scarica e invia l'ultima versione di WordPress a stdout ( flag -O - ) e invialo tramite pipe a tar utility, che estrarrà l'archivio in /var/www directory.

wget -q -O - "http://wordpress.org/latest.tar.gz" | tar -xzf - -C /var/www

Conclusione #

Con wget , puoi scaricare più file, riprendere download parziali, eseguire il mirroring di siti Web e combinare le opzioni Wget in base alle tue esigenze.

Per saperne di più su Wget, visita la pagina del manuale di GNU wget.


Linux
  1. 12 utili esempi di comandi Wget in Linux

  2. Comando Tee Linux con esempi

  3. Comando JQ in Linux con esempi

  4. Comando Wget in Linux con esempi

  5. 5 Esempi di comandi Wget per scaricare file in Linux.

Comando IP Linux con esempi

15 Comando Linux ps con esempi

Comando wget Linux spiegato con esempi

Comando IP Linux con esempi

Comando wget Linux con esempi

Come scaricare file con il comando Wget in Linux