如何使用ruby脚本中的Net::FTP将远程FTP服务器上的文件移动到同一FTP服务器上的目录中。
我知道文件名,并使用ftp.mkdir创建了一个目录,但显然没有方法将文件移到创建的文件夹中。
使用Net::FTP
类的rename()
方法可以移动文件(和目录)。示例:
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服务器上的一个路径移动到另一个路径。
尝试使用重命名命令。如果不起作用,您可以尝试以下命令:“SITE mv oldpath newpath”。这会告诉服务器在服务器上执行该命令。预期行为不适用于所有服务器,而仅适用于某些服务器,因此仅在确保它将与特定服务器一起工作时才使用SITE命令。
有putbinaryfile
和puttextfile
实例方法。这不够吗?或者如果你只想在FTP服务器的范围内移动,那么有rename
方法。