Fr Mär 17 15:57:05 CET 2006

Sourceforge und wget

Wer kennt das nicht, man will ein neues schickes, hippes, cooles, fettes Opensource Projekt runterladen das bei Sourceforge gehostet ist, kopiert den Download link, gibt es wget und was macht das? Das lädt nur eine html Datei wo man raussuchen kann von welchem mirror man das Projekt runterladen will.
SO EIN SCHWACHSINN!
Wenigstens sehen die URLs immer gleich aus, so dass man sich ganz einfach eine Funktion basteln kann die das ganze sucht und ersetzt. Hier ist die Funktion die man sich in seine .zshrc eintragen und fertig.
Naja SFMIRROR noch auf einen entsprechenden Wert setzen, z.bsp. SFMIRROR=http://switch.dl.sourceforge.net/sourceforge/ und es funktioniert.
wget () {
        setopt shwordsplit
        args=${@/http:\/\/prdownloads.sourceforge.net/$SFMIRROR} 
        args=${args%'?download'} 
        command wget $args
}
Beispiel:
[~/tmp] -> wget http://prdownloads.sourceforge.net/rdesktop/rdesktop-1.4.1.tar.gz?download
--15:55:09--  http://switch.dl.sourceforge.net/sourceforge/rdesktop/rdesktop-1.4.1.tar.gz
....
Ziemlich brauchbar und erleichtert einem das Leben ungemein. Wie man das ganze auf andere Shells umschreibt, bleibt dem geneigten Leser selbst überlassen.

Posted by Ulrich Dangel | Permanent Link | Categories: Shell stuff