# 方法一:
python 的os模块:
import gevent
from gevent import monkey
monkey.patch_all()
import os
import time
def remove_repetition(key):
global path,num
num += 1
print(key,num)
# 获取已经存在的key
os.chdir(path)
# 去重
os.remove(key)
if __name__ == '__main__':
# 已经保存的文件文件夹
start_time = time.time()
path = r'D:\zjf_workspace\001-地标、利器、服饰\004文本\baidu_isbn5\新建文件夹\txt'
# os.chdir(path)
key_list = os.listdir(path)
gevent_list = []
num = 0
for i in key_list:
if num >= 5000:
gevent.joinall(gevent_list)
print("准备删除gevents")
gevent.killall(gevent_list)
gevent_list = []
num = 0
gevent_key = gevent.spawn(remove_repetition,i)
gevent_list.append(gevent_key)
gevent.joinall(gevent_list)
# remove_repetition(path=path)
end_time = time.time()
print(end_time-start_time,"秒")
删除了57546个json文件,总共用时191秒,合301个文件每秒。(因为我的每个文件很小,所以多一点,但是也比Windows右击全选删除快,已经测试过了)
方法二(推荐,简单、高效):
将下面这俩句话放到Windows一个txt文档中,然后另存为一个.bat系统文件,将需要删除的文件或者文件夹拖到此.bat文件上即可。
DEL /F /A /Q \?%1
RD /S /Q \?%1
这个是我的做成的,参考网上的方法,因为我有个文件是0kb,一直删除掉,上网搜了这个方法,直接就删除了,把此文件留在电脑中备用。
87400个json小文件,用手机测试,用了202秒,合每秒430个,比第一个方法更快,可能是因为第一个方法需要借用python,以及相关模块原因吧,但是第一种比直接删除还快一点,所以建议用第二种方法。