作者jengys ( )
看板Perl
标题[问题] 连接FTP抓档案
时间Tue Jul 19 19:06:35 2011
目的:想连上FTP的指定资料夹抓取全部档案到电脑里的指定资料夹
小弟刚接触perl没多久
程式是经由板上的文章去作修改的
所以有些地方不太懂 想请教各位
我现在的问题是
1.成功连上FTP->成功读取来源资料夹内的档案
->使用get抓档案->档案开启失败
所谓开启失败是指除了.txt档
其他如.doc .xls .ppt这些文件档案都会损毁
我有连到FTP去检查档案 确定档案是没有问题的
但是用程式抓 就会发生「修改时间更新」、「档案变大」以及「坏档」的情况出现
(修改时间更新是指 原本档案的最後修改时间会变成抓档案的时间)
不知道是什麽问题?
(程式可以顺利执行 也没有出现任何警告或错误的讯息)
2.要如何让档案被抓到指定的目录下?
目前档案会被抓到和程式同一个目录下
以下为程式码
use Cwd;
use strict;
use Net::FTP;
my($site,$ftp,$direc,@line,@local,%filename);
$site="xx.xx.xx.xx";
$ftp=Net::FTP->new("$site",Debug=>0) or die;
$ftp->login("id","pw") or die;
$direc='/test1';#来源目录
$ftp->cwd($direc);
@line=$ftp->ls();
$ftp->binary;
foreach(@line){
$ftp->get($_) or die;
print $_,"\n";
}
$ftp->quit() or die;
先谢谢各位高手
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.194.216.168
1F:推 CindyLinz:连上之後传档案之前加一下 $ftp->binary 档案就不会变大 07/19 22:28
谢谢楼上C大
档案变大的问题解决了
可是
「档案最後修改时间」的变动依然找不到解决之道
※ 编辑: jengys 来自: 123.194.216.168 (07/20 20:11)