我跑了这个:
ftps.rename(rec.path+field_name, rec.archive_path+field_name)\
print 'passed'
将文件移动到另一个目录,因为我需要将其存档。这行代码运行正常,没有错误(我还添加了打印检查以查看它是否真的运行)。但文件不会移动。它没有发生任何事情。我不明白为什么。
此外,我似乎无法使用GUI移动文件。例如,我使用Ubuntu网络接口连接到ftp,然后尝试手动剪切和粘贴文件。然后我看到这条消息(和进度条):preparing to move 1 file
,但它只是消失了,没有任何反应。没有错误,没有。
ftp中的目录就是这样的:
/root/
/source/
/archive/
我正在尝试将文件从source
移至archive
确切地说,ftp服务器是sharefile.com(sharefileftp.com)
P.S。也许可以将文件复制到另一个目录(作为解决方法)?看来我至少可以手动复制文件。所以我可以复制它,然后从原始目录中删除一个
答案 0 :(得分:1)
这就是我做到的。
首先转到你的目的地目录:
FTP.cwd('/home/destination/')
然后执行move(重命名并重命名为)命令:
FTP.sendcmd('RNFR ' + 'Full/Path/Source/File')
FTP.sendcmd('RNTO ' + 'filename')
这些是完成工作的FTP命令,与在控制台中使用的方式相同。
我认为你可以进入目的地并以同样的方式使用FTP.rename,它可能只是一些权限问题或FTP的设计方式。