Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8315[/thread]

FTP mit Perl

Leser: 1


<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten
Rafael
 2006-09-11 13:39
#69663 #69663
User since
2006-07-26
22 Artikel
BenutzerIn
[default_avatar]
Hey Leute
Ich würde gerne mit Perl auf meinem FTP-Server arbeiten (upload, download, löschen).
Leider hab ich keinen Plan, wie ich dies anstellen soll.
Könnt ihr mir helfen?
danke
Rafael
vayu
 2006-09-11 13:41
#69664 #69664
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
fraggs
 2006-09-11 13:43
#69665 #69665
User since
2006-09-11
179 Artikel
BenutzerIn
[Homepage] [default_avatar]
ich glaube das wird dir weiter helfen :) CPAN:Net::Ftp
da werde ich mich auch jetzt grad mal durchlesen aber ich denke andere habe noch mehr informatievere tips;)

EDIT:baaah vayu !!! 2 minute schneller haha\n\n

<!--EDIT|fraggs|1157967891-->
mmm twix
Rafael
 2006-09-11 16:40
#69666 #69666
User since
2006-07-26
22 Artikel
BenutzerIn
[default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/perl

use strict;
use warnings;
use Net::FTP;

my $host = "";
my $user = "";
my $pass = "";
my $option = 0;
my $option_2 = 0;
my $ftp = "";

print "Bitte wählen Sie: \n1 Anonymer Login \n2 Eingabe von Benutzerdaten \nIhre Wahl: ";
$option = <STDIN>;
if ($option == 1){
$user = "anonymous";
$pass = "anonymous\@anonymous.com";
};
if ($option == 2){
print "\nBenutzername: ";
$user = <STDIN>;
print "\nPasswort: ";
$pass = <STDIN>;
}
else {....};
print "\nHost: ";
$host = <STDIN>;
$ftp = Net::FTP->new($host);
$ftp->login($user, $pass);

Hier bekomme ich dann die Meldung:
Can't call method "login" on an undefined value D.\Perl\FTP\ftp.pl line 39. <STDIN> at line 2.\n\n

<!--EDIT|renee|1157980045-->
fraggs
 2006-09-11 16:45
#69667 #69667
User since
2006-09-11
179 Artikel
BenutzerIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/perl

use strict;
use warnings;
use Net::FTP;

my $host = "";
my $user = "";
my $pass = "";
my $option = 0;
my $option_2 = 0;
my $ftp = "";
my $login = "";

print "Bitte wählen Sie: \n1 Anonymer Login \n2 Eingabe von Benutzerdaten \nIhre Wahl: ";
$option = <STDIN>;
if ($option == 1){
$user = "anonymous";
$pass = "anonymous\@anonymous.com";
};
if ($option == 2){
print "\nBenutzername: ";
$user = <STDIN>;
print "\nPasswort: ";
$pass = <STDIN>;
}
print "\nHost: ";
$host = <STDIN>;
$ftp = Net::FTP->new($host);
$ftp->$login($user, $pass);


check nochmal nach mit deinem "else" dort stimmte was nicht aber das braucht man nicht unbedingt

edit: frage in welchem format wird der host eingegeben ?
wenn ich nach ftp:// frage wird er dir einen error geben !

edit2: das hier ist auch interesant ! File::Listing FTP\n\n

<!--EDIT|fraggs|1157979355-->
mmm twix
renee
 2006-09-11 17:09
#69668 #69668
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
mach mal ein chomp $host; nachdem Du den host eingegeben hast...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
fraggs
 2006-09-11 17:23
#69669 #69669
User since
2006-09-11
179 Artikel
BenutzerIn
[Homepage] [default_avatar]
k ich komme ueber all durch name passwort etc. aber sobald man eine host eingibt sag er:

Quote
Can't call method "" on an undefined value at ftp.pl line 32, <STDIN> line 2.
\n\n

<!--EDIT|fraggs|1157981020-->
mmm twix
nepos
 2006-09-11 17:31
#69670 #69670
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Man sollte nach dem Net::FTP->new pruefen, ob undef zurueckgegeben wird. Wenn das fer Fall ist, findet man in $@ die Fehlermeldung, was schiefgelaufen ist. Siehe auch Net::FTP unter dem Punkt CONSTRUCTOR.
renee
 2006-09-11 17:32
#69671 #69671
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Auch bei $user und $password sollte man chomp machen.

Und mach mal
Code: (dl )
1
2
$ftp = Net::FTP->new($host, Debug => 0)
or die "Cannot connect to $host: $@";
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
fraggs
 2006-09-11 17:41
#69672 #69672
User since
2006-09-11
179 Artikel
BenutzerIn
[Homepage] [default_avatar]
alles ge chomp 't und auch
Quote
$ftp = Net::FTP->new($host, Debug => 0)
    or die "Cannot connect to $host: $@";
eingebaut

nun habe ich das hier

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/perl

use strict;

use warnings;
use Net::FTP;

my $host = "";
my $user = "";
my $pass = "";
my $option = 0;
my $option_2 = 0;
my $ftp = "";
my $login = "";

print "Bitte wählen Sie: \n1 Anonymer Login \n2 Eingabe von Benutzerdaten \nIhre Wahl: ";
$option = <STDIN>;
if ($option == 1){
$user = "anonymous";
$pass = "anonymous\@anonymous.com";
};
if ($option == 2){
print "\nBenutzername: ";
$user = <STDIN>;
chomp($user);
print "\nPasswort: ";
$pass = <STDIN>;
chomp($pass);
}
else {print "anonymous login selected\n"};
print "\nHost: ";
$host = <STDIN>;
chomp($host);
$ftp = Net::FTP->new($host, Debug => 0)
    or die "Cannot connect to $host: $@";
$ftp->$login($user, $pass);


schmeist mir einen error

Quote
Cannot connect to 127.0.0.1: Net::FTP: connect: Unknown error at ftp.pl line 34,
<STDIN> line 4.


woher kommt der <STDIN> line 4 error ? ist das der host input ?

EDIT: Doh ftp war nicht an bin auf der arbeit kann nichts isntallieren werde heute abend nochmals testen\n\n

<!--EDIT|fraggs|1157982249-->
mmm twix
<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten



View all threads created 2006-09-11 13:39.