在python中断os.rename

时间:2016-06-11 17:45:10

标签: python python-2.7 file python-os

我在python中创建了一个脚本,它在“。”中重命名所有文件和文件夹(不是 recurse )。 directory:保存文件的目录。碰巧我在一个没有文件的目录中运行脚本,只有一个目录让我们说 imp ,路径为.\imp。当程序重命名时,电力中断,工作中断(抱歉没有UPS)。

现在顾名思义,假设 imp 包含重要数据。重新命名过程也耗费了相当多的时间(与其他人相比),在电力消失之前,即使所有重命名都是一个文件夹。在这种努力之后,一些数据被破坏,丢失或任何东西?

让这个更有用:os.rename在执行工作时强制会停止什么?文件和文件夹的效果有何不同?

详细

Python版 - 2.7.10

操作系统 - Windows 10 Pro

1 个答案:

答案 0 :(得分:2)

您正在使用Windows,这意味着您(可能)在NTFS上。 NTFS是一个现代的journaling文件系统。它不应该损坏丢失任何数据,尽管可能只有一些构成重命名的更改已被应用(例如,文件名可能更改而不更新修改时间,或反之亦然)。也有可能没有应用这些变化。

注意"应该"和"会不一样。" NTFS 不应该以这种方式丢失数据,如果确实如此,那就是一个bug。但是因为所有软件都有错误,所以保留你关心的文件备份很重要。