整理文件时发现有个文件夹无法删除报0x80070091错误,网上查到的方法试了一遍,都不管用,简单分析了一下状况,windows文件管理器在操作时崩溃了,DiskGenius也是相同的现象,有网友给的解决方案是进入到最后一级子文件夹,看来别人遇到的嵌套文件夹级数并不多,写了个脚本测了一下,我的子文件夹是8485级,路径总长度29723个字符,自觉动手能力应该没那么强,最后一级即便真能进去也不敢保证文件管理器不会崩,只好自己写个脚本一级一级删了,以下是代码:
import os.path
path = r"C:\aaa"
sub_paths = [r"\d1", r"\d2"]
sub_path_finish = 0
os.chdir(path)
while 1:
for sub_path in sub_paths:
try:
os.chdir(sub_path)
except FileNotFoundError:
sub_path_finish += 1
if sub_path_finish >= len(sub_paths):
break
print(f"enter path finished.")
print("begin delete dir")
while 1:
try:
os.chdir("..")
for sub_path in sub_paths:
try:
os.rmdir(sub_path)
except FileNotFoundError:
pass
except FileNotFoundError:
break
print("finish delete dir")
代码应该不够完善,但我自己的问题是解决了,希望对遇到相同问题的小伙伴有所帮助。