11

如何在 ruby​​ 脚本中使用 Net::FTP 将远程 FTP 服务器上的文件移动到同一 FTP 服务器上的目录。我知道文件名,并且我已经使用 ftp.mkdir 创建了一个目录,但显然没有方法可以将文件移动到创建的文件夹中。

4

3 回答 3

12

文件(和目录)可以使用类的rename()方法移动Net::FTP。例子:

ftp = Net::FTP.new("ftp.myserver.com","myusername","mypassword")
ftp.binary = true
ftp.passive = true

path1 = "/original/dir/path/"    # Dir to move
path2 = "/new/path/"             # New path of Dir

ftp.rename(path1, path2)

就是这样!这会导致所有文件在同一 FTP 服务器上从一个路径移动到另一个路径。

于 2013-06-27T19:07:28.560 回答
1

尝试重命名命令。如果它不起作用,您可以尝试以下命令:“SITE mv oldpath newpath”。这告诉服务器在服务器上执行命令。预期的行为不会在所有服务器上起作用,而只会在某些服务器上起作用,因此只有在您确定它可以与特定服务器一起使用时才使用 SITE 命令。

于 2013-03-13T11:44:28.200 回答
0

putbinaryfileputtextfile实例方法。这还不够吗?或者如果你只是想在一个ftp服务器的范围内移动,有rename方法。

于 2013-03-13T10:39:03.750 回答