#1 Le 09/12/2010, à 01:38
- nesthib
[script]télécharger récursivement le dernier dossier dans un lien HTTP
wget est un outil très puissant, avec de très nombreuses options, parfois trop d'options, si bien que l'on peut s'y perdre.
La fonction bash qui suit permet de télécharger récursivement dans le dossier courant le dernier dossier de l'adresse HTTP fournie en argument. À ajouter dans votre ~/.bashrc (pensez à relancer le terminal).
function smartwget () {
chemin=${1%/}
number=$(( $(sed "s|/|\n|g" <<<${chemin#http://*/} | wc -l) - 1 ))
[[ ${number} -gt 0 ]] && arg="--cut-dirs=${number}"
wget -r -np -nH $arg -R "index.htm*" ${1}
}
brève explication :
les premières lignes servent à calculer la profondeur des sous-dossiers
-r : récusif
-np : ne pas remonter vers les parents
-nH : ne pas créer de dossier contenant le nom de la racine du site
-R "index.htm*" : ne pas télécharger les fichiers index.htm*
--cut-dirs=${number} : si la profondeur est supérieure à 0, ne pas recréer localement l'arborescence du serveur distant
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#2 Le 04/04/2014, à 17:41
- JujuLand
Re : [script]télécharger récursivement le dernier dossier dans un lien HTTP
Bonjour,
Désolé de déterrer ce vieux post.
Ce script m'intéresse.
Je l'ai ajouté à .bashrc, mais je n'ai pas trouvé comment le lancer.
Merci
A+
Ubuntu 12.04 avec Gnome-shell > NEC Powermate VL360 (de 2007) - AMD Athlon(tm) 64 Processor 3500+ / RAM 3,4 Go
Xubuntu 16.04 > Dell DM061 - 2x Intel Core(TM)2 CPU 6300 @ 1.86GHz / RAM 2 Go
Hors ligne
#3 Le 05/04/2014, à 06:05
- nesthib
Re : [script]télécharger récursivement le dernier dossier dans un lien HTTP
smartwget http://example.org/chemin/vers/un/dossier/
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#4 Le 05/04/2014, à 09:06
- JujuLand
Re : [script]télécharger récursivement le dernier dossier dans un lien HTTP
Hier, avec le même code, çà ne fonctionnait pas, malgré une fermeture de session ?
J'ai du merder, car çà fonctionne nickel, sans que je ne touche quelque chose.
Merci
A+
Ubuntu 12.04 avec Gnome-shell > NEC Powermate VL360 (de 2007) - AMD Athlon(tm) 64 Processor 3500+ / RAM 3,4 Go
Xubuntu 16.04 > Dell DM061 - 2x Intel Core(TM)2 CPU 6300 @ 1.86GHz / RAM 2 Go
Hors ligne