mac 垃圾篓删除空文件夹

背景

之前垃圾篓莫名出现了几个空文件夹,删除时报错该文件正在运行中。

措施

在一开始搜索了网上的方法,包括重启 MAC 什么的,都不生效。

后面想到之前跑 python 脚本误删的文件根本找不到,所以尝试使用 python 来删除。

解决方案

开启脚本访问磁盘权限

  1. 系统偏好设置 → 安全性与隐私 → 隐私 → 完全磁盘访问
  2. 解锁后添加当前使用的终端应用

代码

py 复制代码
import os
import subprocess

def empty_trash():
    trash_path = os.path.expanduser('~/.Trash')
    
    if not os.path.exists(trash_path):
        print("垃圾桶路径不存在:", trash_path)
        return

    print(f"开始清理垃圾桶,共检测到 {len(os.listdir(trash_path))} 个项目...")
    
    for item in os.listdir(trash_path):
        item_path = os.path.join(trash_path, item)
        
        if item == '.DS_Store':
            try:
                os.unlink(item_path)
                print(f"已删除系统文件: {item}")
            except:
                continue
        
        if os.path.isdir(item_path):
            try:
                sub_items = os.listdir(item_path)
                if not sub_items or all(x.startswith('.') for x in sub_items):
                    try:  
                        # 尝试普通删除
                        os.rmdir(item_path)
                        print(f"成功删除空文件夹: {item}")
                    except Exception as e:
                        print(f"无法删除 {item},尝试强制删除...")
                        subprocess.run(['/bin/rm', '-rf', item_path], check=True)
                        print(f"已强制删除: {item}")
            except Exception as e:
                print(f"目录访问错误: {item} - {str(e)}")
                continue

if __name__ == "__main__":
    empty_trash()

感想

  • 代码由 Trea 的 DeepSeek-V3-0324 生成。
  • 用 AI coding 简单任务非常高效,一共三个来回就生成了最终代码(过程中出现了生成缩进不合规范的情况),但总体来说瑕不掩瑜。
  • 被这几个空文件夹折磨了几个月终于解决了。
相关推荐
这里有鱼汤6 分钟前
给你的DeepSeek装上实时行情,让他帮你炒股
后端·python·mcp
Tomorrow'sThinker40 分钟前
[特殊字符] Excel 读取收件人 + Outlook 批量发送带附件邮件 —— Python 自动化实战
python·excel·outlook
JosieBook1 小时前
【Java编程动手学】Java常用工具类
java·python·mysql
灵智工坊LingzhiAI3 小时前
人体坐姿检测系统项目教程(YOLO11+PyTorch+可视化)
人工智能·pytorch·python
烛阴11 小时前
简单入门Python装饰器
前端·python
好开心啊没烦恼11 小时前
Python 数据分析:numpy,说人话,说说数组维度。听故事学知识点怎么这么容易?
开发语言·人工智能·python·数据挖掘·数据分析·numpy
面朝大海,春不暖,花不开11 小时前
使用 Python 实现 ETL 流程:从文本文件提取到数据处理的全面指南
python·etl·原型模式
2301_8050545613 小时前
Python训练营打卡Day59(2025.7.3)
开发语言·python
万千思绪13 小时前
【PyCharm 2025.1.2配置debug】
ide·python·pycharm
微风粼粼14 小时前
程序员在线接单
java·jvm·后端·python·eclipse·tomcat·dubbo