我正在使用 Perl 模块 Net::FTPSSL,并且“重命名”不起作用,其他所有功能都起作用。我已验证文件存在,并且我可以使用基于 GUI 的 FTP 客户端重命名它,但不能通过 Perl 模块重命名。
>>> RNFR ftpbogus.txt, testfile.txt
<<< 550 RNFR command failed.
下面是代码。
use Net::FTPSSL;
use Test::More;
my $server = "localhost";
my $ftps = Net::FTPSSL->new("localhost",
Port => 990,
Encryption => 'E',
Debug => 5);
$ftps->login("ftpuser55", "narfnarf");
## copying a file to the user's home directory.
$ftps->put("ftpbogus.txt");
my @ret = $ftps->list();
## renaming a file in the ftp server
$ftps->rename("ftpbogus.txt, testfile.txt");
#$ftps->quit();
答案1
rename
接受两个参数: OLDNAME, NEWNAME
。您正在传递包含两个文件名的单个字符串,命令应为
$ftps->rename("ftpbogus.txt", "testfile.txt");