Python,在多个目录中一一删除文件

时间:2018-09-06 02:27:11

标签: python file directory operating-system

我正面临一个简单的问题,但无法解决。 我有数百万个文件,需要删除数百万个目录。 Windows无法处理它,因为它在开始删除之前就已经崩溃了。尝试使用Linux脚本,但这实际上没有用。

我决定编写自己的程序来做到这一点。想法很简单:

检查根路径中是否有文件夹,如果存在,请进入其中,检查文件夹是否存在,直到没有文件夹,然后删除该文件夹中的所有文件,然后删除该文件夹,然后重新启动,直到根目录为空。

我开始尝试使用OS库。 到目前为止,我得到了:

import os
rootdir = 'D:/TEST/'
global current_dir
current_dir = rootdir
global dir_counter
dir_counter=0
while (os.listdir(rootdir)[1]):
    print(current_dir)
    if(os.listdir(current_dir)[1]):
        if (os.path.isdir(os.path.join(current_dir,os.listdir(current_dir)[dir_counter+1]))):
            current_dir  = os.path.join(current_dir,os.listdir(current_dir)[dir_counter+1])
            dir_counter = dir_counter+1

我只是想测试它是否会进入目录的末尾,但是不幸的是,它仅进入一个级别并停留在那里。

我的文件夹结构 TEST1-> FOLDER-> FOLDER2-> FOLDER3 测试2 TEST3

1 个答案:

答案 0 :(得分:1)

由于您的需求并不真正依赖于python,因此您可以考虑尝试此处所述的一些技术:

https://superuser.com/questions/741945/delete-all-files-from-a-folder-and-its-sub-folders?answertab=votes#tab-top