介绍:很多时候,我们需要从远处服务器上下载当天或者昨天生成的日志文件,来查看一些我们需要的东西或者备份。
如果采用了ftp,那么我们应该建立自动化的ftp方式,来方便我们的工作,下面我们将使用perl语言编写的,当然也可以用shell。
以下的例子用到了perl的模块:Net::FTP。
#!/usr/bin/perl
use Net::FTP;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();
$year=$year+1900; #显示为当前年份
$mon=$mon+1; #显示为当前月份
$mon = "0".$mon if ($mon < 10); #显示月份为 01,02的格式
$sum="$year-$mon-$mday"; #显示时间 为 2008-12-22 这样的格式
$ftp = Net::FTP->new("hostname(IP地址)", Debug =>1);
$ftp->login('user(用户名)','passwd(密码)');
$ftp->binary;
$ftp->cwd("path(路径)");
$ftp->get("$sum-filename(文件名)") #比如 2008-12-22_text.txt
or die "$!";
$ftp->quit;
可以使用linux下的crontag加入计划任务中执行。
例如,想早上5点半开始执行下载,则可以加入:
30 05 * * * perl Ftp.pl
则以后程序就可以自动化ftp操作了。
以上内容,供学习参考,有关Net::FTP的更多内容,请参照cpan网站介绍,多多练习与提高。