有人正在将大小为10Mb的
文件FTP到
linux服务器上的
文件夹.
当
文件正在转换时,cron唤醒并触发一个Perl脚本,该脚本旨在查看ftp
文件夹,并将其中找到的任何
内容移动到某个备用
文件夹.我正在使用
File::Copy中的move()
函数.Perl进程实际上将
文件重命名为其任务的一部分.这是重要的,还是FTP不关心
文件系统将
文件描述为?
会移动()成功并移动部分文件,离开FTP做什么?
还是会移动失败并返回0?
不,移动应该只是让新的位置完成下载过程.您只是将inode从一个位置移动到另一个位置.来自下载程序的打开的
文件描述符应该仍然指向它.
我只想重复几个人提到的内容.只要移动操作在同一文件系统上,这只能起作用.如果它作为另一个文件系统,因为它始终属于同一文件系统,所以不能传输inode.最可能的情况是,当时的部分数据被复制到新的位置,而程序仍然下载到不再附加到文件的旧的inode中,因此不能使用.