hi
Below is my script but when i run the script its not collect the input files from remote server. Why ?. Please help me
Run command Line:
./neax_ftp.pl -i 192.168.10.102 -u baharin -p baharin -r /home/baharin
+/data/input -l /home/sysadmin/bh/input -f *.xml
The program code as below:
#!/usr/bin/perl
use Net::FTP;
use strict;
use Getopt::Long;
my ($username,$password,$ip,$remotedir,$localdir,$filename,$filemode)
+= (0,0,0,0,0,0,0);
my ($ftp,$success);
GetOptions (
"i=s" => \$ip,
"u=s" => \$username,
"p=s" => \$password,
"r=s" => \$remotedir,
"l=s" => \$localdir,
"f=s" => \$filename,
"m=s" => \$filemode
);
my $log = "/home/sysadmin/bh/sys.log";
my $err;
open (LOGS, ">> $log") or die ("Can't open $log\n");
#$ftp = Net::FTP->new("192.168.10.102") or die "Can't connect to 190.2
+54.14.34\n";
$ftp = Net::FTP->new($ip, Timeout=>240) or $err=1;
print "LOGIN: $ip\n";
if ($err) {
print (LOGS "Can't connect to $ip\n");
$ftp->quit;
}
$ftp->login("$username","$password") or $err=1;
print "LOGIN: $username/$password\n";
if ($err) {
print (LOGS "Can't login to $ip with $username, $password\n");
$ftp->quit;
}
$ftp->binary();
$ftp->cwd("$remotedir") or $err=1;
print "LOGIN: $remotedir\n";
if ($err) {
print (LOGS "Can't change to directory $remotedir\n");
$ftp->quit;
}
$ftp->get("$remotedir/$filename") or $err=1;
print "LOGIN: DIR\n";
if ($err) {
print (LOGS "Can't collect file $filename from dir $remotedir\
+n");
$ftp->quit;
}
$ftp->quit;
close(LOGS);