David Buch hat gesagt: // David Buch wrote: > wenn ich mit "wget -i urlinputfile" eine liste mit files downloaden > will und in der urlinputfile bei manchen URLs leerzeichen enthalten > sind, werden diese files nicht downgeloadet, auch, wenn wie in URLs in > Browsern ein + anstatt der leerzeichen steht > > wenn ich "wget url\ mit\ leerzeichen" mache, funktioniert das (in der > urlinputfile allerdings so auch nicht) > > wei� jemand von euch wie man das loesen koennte?
Leerzeichen und noch ein paar andere Zeichen in Reinform sind in URLs nicht wirklich zugelassen, sondern sollten umgewandelt werden (wie beschrieben in RFC 2396). Ein Leerzeichen z.B. wird dann zu "%20". wget macht das oft automatisch, kommt aber bei Dateien mit URL-Listen durcheinander. Da hilft das kleine Perl-Skript im Anhang. Aufruf: "urlfix URL-Datei[en]" Damit wird aus einer Datei mit diesem Inhalt >---< http://localhost/leer- und sonder- ()=`�']#+*- zeichen.html >---< eine Datei mit diesem: >---< http://localhost/~freak/leer-%20und%20sonder-%20()=%60%B4'%5D%23+*-%20zeichen.html >---< bye, -- __ __ Frank Barknecht ____ ______ ____ __ trip\ \ / /wire ______ / __// __ /__/ __// // __ \ \/ / __ \\ ___\ / / / ____/ / / / // ____// /\ \\ ___\\____ \ /_/ /_____/ /_/ /_//_____// / \ \\_____\\_____\ /_/ \_\
#!/usr/bin/perl -wpi.bak use URI::Escape; chomp; # This function replaces all unsafe characters in the # $string with their escape sequences and returns the # result. $_=uri_escape($_); $_=$_."\n";

