ubuntuusers.de

Script: lshttp - HTTP Ordnerlisten in wget-taugliche Listen

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

Dr._Seltsam

Anmeldungsdatum:
11. Januar 2007

Beiträge: 56

Hallo,
habe mich auch mal an einem kleinen Script versucht. Vielleicht findet es ja noch jemand nützlich.

Was macht es?
Oft kommt es vor, dass man vor hat mehrere Dateien per HTTP herunterzuladen, zum Beispiel mehrere
oder sogar alle CDs einer Distribution. Dann ist es recht mühsam alle einzeln anzuklicken bzw. von jeder
Datei den Pfad zu kopieren um die Resource herunterzuladen.

Beispiel:
http://ftp.dk.debian.org/debian-cd/4.0_r0/i386/iso-cd/

Zum Glück gibt es wget, das kann URL-Listen abarbeiten und die Files nacheinander herunterladen. Doch
wie bekommt man aus einem solchen HTTP Directory Listing eine wget-taugliche Liste? Das war bisher
für mich nervige Handarbeit bzw gefiltere per Konsole.

Doch hier setzt das Script ein:
Es nimmt eine URL zu einem Directory Listing als Argument an und macht daraus entweder eine Liste
mit absoluten Pfadangaben (wie für wget nötig) oder mit relativen (Liste mit Dateinamen).

Unter http://87.230.21.228/~cjung/lshttp''' kann es betrachtet, heruntergeladen und natürlich ausprobiert
werden. Auf Feedback und Verbesserungsvorschläge freue ich mich.
Achtung: Das Skript benötigt unbedingt das Programm 'elinks'!

useYbrain

Anmeldungsdatum:
14. Januar 2007

Beiträge: 696

Hi,

eine gute Idee, ein Script dafür zu schreiben 😉
Vielleicht sollte es noch eine Option geben, die nach dem erstellen der Liste direkt mit dem Download beginnt.

Greets,
Pot

Dr._Seltsam

(Themenstarter)

Anmeldungsdatum:
11. Januar 2007

Beiträge: 56

Ich denke, so eine Funktion würde das Skript zweckentfremden.
Ich halte mich da ans KISS-Prinzip, Keep It Simple and Stupid.

lshttp -a http://bla > /tmp/download.txt && wget -l /tmp/download.txt


Würde zum Ziel führen.

Ich denke, wenn das ganze voll automatisiert abläuft, schleichen
sich leicht Fehler ein. Ein kurzer Blick auf die erstellte Liste vor
dem downloaden kann meines Erachtens nicht schaden.

Antworten |