You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python批量删除多级子目录下指定文件夹及脚本正确性校验

脚本问题检查及修正方案

原脚本存在的严重问题

  • 语法错误1:变量dirpath是os.walk返回的字符串类型路径,本身没有exists()和is_dir()方法,直接运行会直接抛出属性错误,无法执行。
  • 语法错误2:shutil.rmtree(dirpath)行没有正确缩进在if判断语句下,不符合Python缩进规则,直接运行会报语法错误。
  • 逻辑致命错误:完全没有判断当前遍历到的目录是否是你需要删除的目标目录,若修复语法后强制运行,会直接删除/Volume/X下所有子目录,造成全量数据丢失。

修正后的安全脚本

建议先执行 dry run(模拟运行)仅打印待删除目录,确认清单无误后再开启删除逻辑:

import os
import shutil

# 根目录配置
root_dir = '/Volume/X'
# 要删除的目标目录名
target_dir_name = 'myDir'

for subdir, dirs, files in os.walk(root_dir):
    # 匹配目标目录名
    if os.path.basename(subdir) == target_dir_name:
        print(f"待删除目录:{subdir}")
        # 确认上面打印的目录全部符合删除预期后,再取消下面两行的注释执行删除
        # if os.path.isdir(subdir):
        #     shutil.rmtree(subdir)

使用注意事项

  • 首次运行请勿取消删除代码的注释,先核对打印出的待删除目录清单,确认没有误判的重要目录后再执行删除操作。
  • 建议操作前对/Volume/X目录做全量备份,避免异常情况造成数据损失。

内容的提问来源于stack exchange,提问作者rita1989

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 05:15:03