Hallo!
Ich habe das Problem das die derzeitige wget Version 1.10.2 die Dateien nicht anhand des filenames der im Content-Disposition header angegeben wird speichert.
Das konkrete Problem ist, dass ich auf einer dynamische Webseite einen download link anklicke und der Downloadprozess auch startet, aber die Dateien werden dann alle zb "index.php?sid=123213uvm" benannt.
Ich habe mit wget -S [downloadlink] überprüft, dass auch wirklich der richtige Dateiname übertragen wird. Er wird nur leider ignoriert.
Nach einer langen google-Session habe ich entdeckt, dass es im trunk von wget unterstützt wird:
** Wget now saves HTTP downloads using file names specified by the
`Content-Disposition' header. This is a standard way of specifying
the file name used by many web dynamically generated pages.
Leider habe ich überhaupt keine Erfahrung darin, Dinge aus trunk's über svn zu kompilieren. 🙂
Da kam mir dann die Idee, die Downloads über ein shell-script zu starten.
Es sollte wget ein erstes Mal aufrufen um den Dateinamen aus dem Header zu filtern und den Download sofort wieder abbrechen. Danach wget ein zweites Mal aufrufen und mit dem output Parameter den richtigen Dateinamen definieren.
Jedoch weiß ich auch da leider nicht wie man im shell-script einen laufenden Prozess beenden könnte.
Sollte ich besser die wget trunk Version versuchen zu kompilieren oder ist der shell-script Weg der einfachere? Oder gibt es vielleicht eine viel bessere und/oder einfachere Variante?