为什么shutil.copy和shutil.copy2创建隐藏的锁文件

时间:2015-12-01 15:35:16

标签: python permissions copy shutil hidden-files

我需要从另一个目录中的目录复制某些文件(满足某些条件),但是我有一个问题,每次我将文件复制到shutil.copyshutil.copy2创建的文件夹中时我是.~lock个文件,所以我无法在这个文件夹上执行其他一些功能

我的功能是将特定文件从一个文件夹复制到另一个文件夹:

def copy_files(path):
    path_input = "%input//" % path
    path_output="%output//" % path
    for i in os.listdir(path_input):
        f=os.path.join(path, i)
        if f.endswith("t.house.csv"):
            shutil.copy(f, path_output) #or shutil.copy2(f, path_output)

所以我的问题:为什么会发生以及如何避免创建~lock文件?如果我无法避免,我可以用哪种方法摆脱它们?

1 个答案:

答案 0 :(得分:0)

如果我复制的其中一个文件是打开的,它将在目标文件夹中创建相应的~lock文件!所以,也许这不是修复这个bug的最好和最聪明的方法,但是通过确保没有打开的文件,我可以避免创建~lock个文件