![]() |
![]() |
|
|
|||||||
| Registrieren | Hilfe/Forumregeln | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
| Linux, UNIX, Open Source Rat & Tat bei Problemen und Fragen rund um GNU/Linux, BSD und sonstige UNIXe |
![]() |
|
|
Themen-Optionen | Ansicht |
|
|
#1 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
Ich hab auf meiner Linux Box Zaval FileSearch installiert, mit diesem Programm kann ich im Netzwerk diverse FTP Server scannen und dann via Web-Interface nach Dateien suchen
http://www.zaval.org/products/file-search/ Nun hab ich dem Entwickler geschrieben, ob es nicht möglich sei, für jeden FTP Server User, Passwort und Port anzugeben, also in der Form ftp://user:pass@host:port Er hat mir auch zurückgeschrieben welche Änderungen ich in der Datei, die den Hostscan macht, vornehmen soll, leider jedoch ist der Code nicht korrekt und von perl hab ich überhaupt keine Ahnung ... Hier mal ein Ausschnitt des Quellcodes welchen mir der Entwickler geschickt hat Code:
my $port = '21', $login, $pwd;
if( $host =~ /\@/ ){
$login = $host;
if( $host =~ /\@(.)+\:/ ){
($host, $port) = split(':', $host);
}
$login =~ s/\@(.)+$//;
($login,$pwd) = split(':', $login);
$ftp = Net::FTP->new($host, Port=>$port);
$ftp->login($login, $pwd) if (defined $ftp);
}
else{
$ftp = Net::FTP->new($host);
$ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"}) if (defined $ftp);
}
Hier der Link zum gesamten File http://www.geraldholl.cc/scan-host.pl.txt |
|
|
|
|
|
#2 |
|
Senior Member
![]() Registriert seit: 29.12.2001
Beiträge: 134
|
Welche Meldung gibt der Interpreter aus wenn du das Programm startest?
____________________________________
http://www.transl.de.vu Linux isn\'t only an OS, Linux is a System of knowledge, and knowledge is powerful! |
|
|
|
|
|
#3 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
Keine, sprich kein Syntax Fehler ...
|
|
|
|
|
|
#4 |
|
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
Hat mich wer gerufen? ;)
Du musst den Code schon in das Script einbauen, sonst klappt es nicht! ;) Ab Zeile 207 in deinem Code: Code:
# The result file has the following structure:
# {File=>F, Dir=>D}:{date:optional}:size:full path
$ftp = Net::FTP->new($host);
if (defined $ftp) {
$ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"});
Code:
# The result file has the following structure:
# {File=>F, Dir=>D}:{date:optional}:size:full path
my $port = '21', $login, $pwd;
if( $host =~ /\@/ ){
$login = $host;
if( $host =~ /\@(.)+\:/ ){
($host, $port) = split(':', $host);
}
$login =~ s/\@(.)+$//;
($login,$pwd) = split(':', $login);
$ftp = Net::FTP->new($host, Port=>$port);
$ftp->login($login, $pwd) if (defined $ftp);
}
else{
$ftp = Net::FTP->new($host);
$ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"}) if (defined $ftp);
}
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
|
|
|
|
|
#5 |
|
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
Ich werde nie wieder gleichzeitig Perl-coden und telefonieren.
Ich werde nie wieder gleichzeitig Perl-coden und telefonieren. Ich werde nie wieder gleichzeitig Perl-coden und telefonieren. Ich werde nie wieder gleichzeitig Perl-coden und telefonieren. Der richtige neue Code lautet: Code:
# ORI.m3: $ftp = Net::FTP->new($host);
# ORI-m3: if (defined $ftp) {
# ORI.m3: $ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"});
my $port = '21', $login, $pwd;
if( $host =~ /\@/ ){
$login = $host;
if( $host =~ /\@(.)+\:/ ){
($host, $port) = split(':', $host);
}
$login =~ s/\@(.)+$//;
($login,$pwd) = split(':', $login);
$ftp = Net::FTP->new($host, Port=>$port);
$ftp->login($login, $pwd) if (defined $ftp);
}
else{
$ftp = Net::FTP->new($host);
$ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"}) if (defined $ftp);
}
if (defined $ftp) {
@list=$ftp->ls("-lR");
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
|
|
|
|
|
#6 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
@m3
geht leider auch noch nicht ... Wenn ich in der Datei keinen User und pass angebe, dann verbindet er sich zum FTP, gebe ich jedoch User und pass an, dann verbindet er sich überhaupt nicht zum Server ... |
|
|
|
|
|
#7 |
|
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
Wie gibst du es denn an?
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
|
|
|
|
|
#8 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
|
|
|
|
|
|
#9 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
Ich hab jetzt mal mittels einer print Anweisung $login und $pwd ausgegeben, die sind korrekt, jedoch der Port wird noch falsch erkannt ... Aber warum erfolgt kein Login trotz korrekten Users und Passwortes?
edit: ich hab den Fehler, bei $port steht immer passwort@IP drinnen ... nur was is da falsch? edit2: Auch die IP passt nicht, in der Var. $host steht immer der username drin |
|
|
|
|
|
#10 |
|
bitte Mailadresse prüfen!
Registriert seit: 03.04.2001
Beiträge: 2.387
|
Soda, jetzt hab ich's gelöst:
Code:
my $port = '21', $login, $pwd;
if( $host =~ /\@/ ){
$login = $host;
if( $host =~ /\@(.)+\:/ ){
($test, $host) = split('@', $host);
($host, $port) = split(':', $host);
}
else {
($test, $host) = split('@', $host);
}
$login =~ s/\@(.)+$//;
($login,$pwd) = split(':', $login);
$ftp = Net::FTP->new($host, Port=>$port);
$ftp->login($login, $pwd) if (defined $ftp);
}
else{
$ftp = Net::FTP->new($host);
$ftp->login($ENV{"FTP_USER"},$ENV{"FTP_PASSWORD"}) if (defined $ftp);
}
|
|
|
|
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| Ansicht | |
|
|