Differenze tra le versioni di "Guida wget"

Da RELug :: Reggio Emilia Linux User Group.
(Introduzione)
(Usare un file di URL)
Riga 35: Riga 35:
 
   '''1.''' Nel primo esempio è stato omesso ''http://'': la risposta è sì, si può omettere tale parte.
 
   '''1.''' Nel primo esempio è stato omesso ''http://'': la risposta è sì, si può omettere tale parte.
  
== Usare un file di URL ==
+
NjRrlw That's 2 clever by half and 2x2 clever 4 me. Thanks!
Passare tanti argomenti quanti sono i file da scaricare può diventare un'operazione onerosa e piuttosto stancante.
 
Pensate ad esempio di dover scaricare le immagini ISO di diverse distribuzioni (Debian, Ubuntu, gNewSense, ecc.): non sarebbe più facile prendere un file e inserirci dentro tutti i vari URL e poi darlo in pasto a wget?
 
Yeah! Possiamo fare anche questo!
 
 
 
La via più semplice è quella di creare un file testuale contenente gli URL dei file da scaricare, ogni indirizzo situato riga per riga.
 
Come esempio, ecco il contenuto del file ''linkIso'':
 
 
 
  http://it.releases.ubuntu.com/10.04.1/ubuntu-10.04.1-desktop-i386.iso
 
  http://it.releases.ubuntu.com/10.04.1/ubuntu-10.04.1-server-i386.iso
 
  http://it.releases.ubuntu.com/10.04.1/ubuntu-10.04.1-alternate-i386.iso
 
  http://it.releases.ubuntu.com/10.04.1/ubuntu-10.04.1-netbook-i386.iso
 
 
 
In ''linkIso'' sono presenti i link alle immagini ISO della distro Ubuntu, in particolare alla versione 10.04.1 del desktop, server, alternate e netbook.
 
Per scaricarle in sequenza con wget dovremo soltanto digitare il seguente comando da shell:
 
 
 
  wget -i linkIso
 
 
 
Di conseguenza, verranno scaricate man mano tutte le immagino, proprio come volevamo.
 
L'opzione '''''-i''''' permette di lavorare su un file semplice di testo in input.
 
 
 
E se volessimo inserire qualche commento? Oppure gestire file HTML?
 
In nostro soccorso arriva l'opzione '''''--force-html''''': in questo modo possiamo dare in pasto a wget anche dei file il cui contenuto è sintassi HTML.
 
A questo punto prendiamo il file ''linkIso'' e trasformiamolo in un file HTML, inserendo dei commenti qua e là, e aggiungendo nuove distribuzioni da scaricare.
 
Il contenuto del neonato ''linkIso.html'' sarà il seguente:
 
 
 
  < !--
 
  Lista delle immagini ISO delle seguenti distribuzioni GNU/Linux :
 
        - Debian
 
        - Ubuntu
 
        - Sabayon
 
        - gNewSense
 
        - Gentoo
 
        - Fedora
 
 
 
  Le architetture supportate sono:
 
        - x86
 
        - amd64
 
        - ia64
 
        - x86_64
 
        - i686
 
  -->
 
 
 
  < !-- x86 -->
 
 
 
  < !-- DEBIAN 5.05 Lenny -->
 
  <base href="http://cdimage.debian.org/debian-cd/5.0.5/i386/iso-cd/">
 
  < !-- Net Install -->
 
  <a href="debian-505-i386-netinst.iso">
 
 
 
  < !-- UBUNTU 10.04.1 LTS -->
 
  <base href="http://it.releases.ubuntu.com/10.04.1/">
 
  < !-- Desktop -->
 
  <a href="ubuntu-10.04.1-desktop-i386.iso">
 
  < !-- Server -->
 
  <a href="ubuntu-10.04.1-server-i386.iso">
 
  < !-- Alternate -->
 
  <a href="ubuntu-10.04.1-alternate-i386.iso">
 
  < !-- Netbook -->
 
  <a href="ubuntu-10.04-netbook-i386.iso">
 
 
 
  < !-- SABAYON 5.3 -->
 
  <base href="ftp://na.mirror.garr.it/mirrors/sabayonlinux/iso/">
 
  < !-- Gnome -->
 
  <a href="Sabayon_Linux_5.3_x86_G.iso">
 
  < !-- KDE -->
 
  <a href="Sabayon_Linux_5.3_x86_K.iso">
 
  < !-- LXDE -->
 
  <a href="Sabayon_Linux_5.3_x86_LXDE.iso">
 
  < !-- XFCE -->
 
  <a href="Sabayon_Linux_5.3_x86_XFCE.iso">
 
 
 
  < !-- GNEWSENSE 2.3 -->
 
  <base href="http://cdimage.gnewsense.org/">
 
  <a href="gnewsense-livecd-deltah-i386-2.3.iso">
 
 
 
  < !-- GENTOO 10.1 -->
 
  <base href="http://mirrors.kernel.org/gentoo/releases/x86/autobuilds/current-iso/">
 
  < !-- Minimal -->
 
  <a href="install-x86-minimal-20100817.iso">
 
 
 
  < !-- FEDORA 13 -->
 
  <base href="http://fedora.mirror.garr.it/mirrors/fedora/linux/releases/13/Fedora/i386/iso/">
 
  < !-- Net Install -->
 
  <a href="Fedora-13-i386-netinst.iso">
 
 
 
  < !-- amd64 -->
 
 
 
  < !-- DEBIAN 5.05 Lenny -->
 
  <base href="http://cdimage.debian.org/debian-cd/5.0.5/amd64/iso-cd/">
 
  < !-- Net Install -->
 
  <a href="debian-505-amd64-netinst.iso">
 
 
 
  < !-- UBUNTU 10.04.1 LTS -->
 
  <base href="http://it.releases.ubuntu.com/10.04.1/">
 
  < !-- Desktop -->
 
  <a href="ubuntu-10.04.1-desktop-amd64.iso">
 
  < !-- Server -->
 
  <a href="ubuntu-10.04.1-server-amd64.iso">
 
  < !-- Alternate -->
 
  <a href="ubuntu-10.04.1-alternate-amd64.iso">
 
 
 
  < !-- SABAYON 5.3 -->
 
  <base href="ftp://na.mirror.garr.it/mirrors/sabayonlinux/iso/">
 
  < !-- Gnome -->
 
  <a href="Sabayon_Linux_5.3_amd64_G.iso">
 
  < !-- KDE -->
 
  <a href="Sabayon_Linux_5.3_amd64_K.iso">
 
  < !-- LXDE -->
 
  <a href="Sabayon_Linux_5.3_amd64_LXDE.iso">
 
  < !-- XFCE -->
 
  <a href="Sabayon_Linux_5.3_amd64_XFCE.iso">
 
 
 
  < !-- GENTOO 10.1 -->
 
  <base href="http://mirrors.kernel.org/gentoo/releases/amd64/autobuilds/current-iso/">
 
  < !-- Minimal -->
 
  <a href="install-amd64-minimal-20100819.iso">
 
 
 
  < !-- ia64 -->
 
 
 
  < !-- DEBIAN 5.05 Lenny -->
 
  <base href="http://cdimage.debian.org/debian-cd/5.0.5/ia64/">
 
  < !-- Net Install -->
 
  <a href="iso-cd/debian-505-ia64-netinst.iso">
 
 
 
  < !-- GENTOO 10.1 -->
 
  <base href="http://distfiles.gentoo.org/releases/ia64/autobuilds/current-iso/">
 
  < !-- Minimal -->
 
  <a href="install-ia64-minimal-20100826.iso">
 
 
 
  < !-- x86_64 -->
 
 
 
  < !-- FEDORA 13 -->
 
  <base href="http://fedora.mirror.garr.it/mirrors/fedora/linux/releases/13/Fedora/x86_64/iso/">
 
  < !-- Net Install -->
 
  <a href="Fedora-13-x86_64-netinst.iso">
 
  < !-- Live -->
 
  <base href="http://fedora.mirror.garr.it/mirrors/fedora/linux/releases/13/Live/x86_64/">
 
  <a href="Fedora-13-x86_64-Live.iso">
 
 
 
  < !-- i686 -->
 
 
 
  < !-- FEDORA 13 -->
 
  <base href="http://fedora.mirror.garr.it/mirrors/fedora/linux/releases/13/Live/i686/">
 
  < !-- Live -->
 
  <a href="Fedora-13-i686-Live.iso">
 
 
 
Il suddetto file è un ottimo esempio per scaricare tantissimi file, lasciando wget a lavorare mentre nel frattempo si compiono altre operazioni sulla stessa macchina.
 
 
 
  '''Consiglio''' : si può utilizzare l'opzione '''''-b''''' per mandare l'esecuzione di wget in background.
 
  Al termine dell'esecuzione, verrà scritto il resoconto in un file nominato wget-log nella cartella presente.
 
 
 
  '''Note'''
 
  '''1.''' In HTML il commento è delimitato dal costrutto ''<!-- -->'': per poter visionare il contenuto
 
    corretto del file ''linkIso.html'' è stato necessario modificare il costrutto in ''< !-- -->''.
 
  '''2.''' Il costrutto ''<base href="URL">'' permette di impostare un link base di riferimento per i
 
    link successivi. Da notare le immagini di Ubuntu non hanno l'intero URL specificato ma soltanto
 
    una parte: la radice è specificata appunto in ''<base href="http://it.releases.ubuntu.com/10.04.1/">''
 
 
 
[[category:Guide]]
 

Versione delle 17:46, 10 apr 2011

La seguente guida è stata realizzare per imparare a scaricare file, immagini, interi siti web tramite il tool wget. Il sistema su cui è stata implementata è Ubuntu 10.04 LTS x86_64.

WgOHhs BION I'm impressed! Cool post!

Ottenere Wget

E' possibile trovarlo sulla pagina ufficiale: wget Inoltre è possibile scaricarlo direttamente via http o ftp.

Se si dispone di un sistema operativo GNU/Linux, solitamente viene installato con l'installazione base del sistema operativo stesso ma nel caso pessimo è possibile trovarlo nei propri repository (Synaptic, Adept, ecc.).
Per capire se è presente, digitare da terminale:

 aptitude search wget

Se a fianco di wget compare una i (installed) allora significa che è già installato nel sistema.

Scaricare un file

Il metodo più semplice per imparare ad utilizzare un programma è proprio quello di provarlo.

 Consiglio : utilizzate la cartella /tmp/ per fare le prove con wget, in questo modo tutto ciò
 che farete in quest'area verrà rimosso al prossimo riavvio.

Apriamo un terminale e digitiamo:

 wget it.wikipedia.org

Ciò che abbiamo fatto è stato scaricare nella cartella corrente la pagina principale di Wikipedia. E' possibile notare la facilità con cui viene scaricata una pagina web: lo stesso ragionamento lo si può fare con un file di qualsiasi tipo.

 wget http://ftp.gnu.org/gnu/wget/wget-latest.tar.bz2

Sia la pagina web che l'ultima versione di wget vengono scaricati allo stesso modo: <comando> <argomento>.

 Note
 1. Nel primo esempio è stato omesso http://: la risposta è sì, si può omettere tale parte.

NjRrlw That's 2 clever by half and 2x2 clever 4 me. Thanks!