我正在尝试使用perl连接到FTP服务器。我正在使用下面的代码,当我在CMD中运行代码时,我得不到任何回报,因此我认为它已经建立了连接。
我想知道是否有办法将CSV文件从我的桌面复制到FTP服务器。但是,CSV文件名每次都不同,例如
File_2017_10_23 - 10.29.20
File_2017_10_23 - 13.40.20
正如您所见,CSV文件会在每次生成文件时获取当前日期和时间。
我正在使用WINSCP连接到我的FTP服务器。
perl脚本:
use strict; # Don't forget !
use Net::FTP;
my $host = "your.favorite.server";
my $user = "user";
my $password = "password";
my $put_file = 'filename.csv';
my $dir = 'C:\Users\Rich\Desktop';
my $f = Net::FTP->new($host) or die "Can't open $host\n";
$f->login($user, $password) or die "Can't log $user in\n";
$f->cwd($dir) or die "Unable to cwd to $dir\n";
$f->put($put_file) or die "Unable to put $put_file\n";
有人可以告诉我这是怎么做的。
答案 0 :(得分:0)
这很简单。您需要cwd
到您要放置文件的位置,然后put
放在那里。然而,这不是移动文件,只是复制它。如果你想移动它,而是在本地复制和删除。
use strict; # Don't forget !
use Net::FTP;
my $host = "your.favorite.server";
my $user = "user";
my $password = "password";
my $put_file = 'filename.csv';
my $dir = '/dir/goes/here';
my $f = Net::FTP->new($host) or die "Can't open $host\n";
$f->login($user, $password) or die "Can't log $user in\n";
$f->cwd($dir) or die "Unable to cwd to $dir\n";
$f->put($put_file) or die "Unable to put $put_file\n";