我如何知道文件是否已完成复制?

时间:2019-02-28 01:29:16

标签: python windows file copy

我得到了一个简单的文件转换任务:每当MP4文件位于某个目录中时,我都会对其进行魔术处理,然后将其移动到另一个目录中。简洁明了,易于自动化。

但是,如果用户将一些大文件复制到目录中,我担心我的脚本可能会在复制过程中捕获它,而只使用一半的文件。

在Windows上使用Python 3是否有办法检查文件是否已完成复制(换句话说,当前没有进程在写入文件)?

编辑:为澄清起见,我不知道文件如何到达那里:我的脚本只需要监视一个共享的网络文件夹并处理放置在那里的文件。它们可能是从我无法访问的本地文件夹中复制的,或者是通过SCP放置的,或者是从Web下载的;我所知道的就是目的地。

2 个答案:

答案 0 :(得分:0)

您可以定期比较文件the source filethe destination file的大小。

If the file sizes are different: Not done.
If the file sizes are the same: Done.

答案 1 :(得分:0)

您可以先尝试比较文件的初始大小,或者查看文件夹中是否有新文件,捕获新文件的名称,并查看文件大小是否在x时间内增加(如果有脚本),您可以显示代码。...