利用Python自动化清除移动硬盘中的Mac临时文件

沈知远
沈知远
发布时间:2026-10-14 | 4人浏览过
原创

本文介绍如何使用Python脚本自动检测并清除插入Windows电脑的移动硬盘中的Mac OS临时文件(如._xxx)。通过pyinstaller打包为exe,结合instsrv和srvany创建Windows系统服务,实现插入硬盘即自动清理,解决跨平台文件拷贝时的兼容性问题。

目标场景与解决方案概述

1、目标场景

使用Mac OS系统的用户通常熟悉,在进行日常文件操作时,系统会在同级目录下自动生成特定的隐藏临时文件。

当把文件夹打包成压缩包或拷贝至移动硬盘时,这些临时文件会被一并包含在内。若涉及程序源代码,在Windows环境下编译时,这些文件有时会造成干扰或影响。

本文旨在介绍一种方案:在移动硬盘插入电脑时,利用Python脚本配合Windows服务,自动执行删除这些临时文件的操作。

Python脚本开发与打包

2、编写代码

首先,我们需要编写代码循环检测PC的驱动器列表,以判断是否存在可移动的磁盘设备。


# 循环遍历,对每一个驱动器进行判断

while True:

        for item in disk_partitions():

            if 'removable' in item.opts:

                driver, opts = item.device, item.opts

                # 删除临时文件

                pass

                break

            else:

                continue

        # 休眠5s,继续遍历

        sleep(5)

一旦检测到可移动磁盘,程序将遍历该磁盘内的文件,专门定位并删除Mac生成的临时文件。


def remove_all_file(filepath, file_name):

    """

    删除 MAC 临时文件

    :param file_name:

    :return:

    """

    for root, dirs, files in os.walk(filepath):

        for name in files:

            print(name)

            if name.startswith("._") or name == file_name:

                os.remove(os.path.join(root, name))

随后,我们利用pyinstaller工具将Python源文件打包成Exe可执行文件,以便在无需Python环境的情况下运行。


# 安装 pyinstaller 

pip3 install pyinstaller 

# 把 py 文件打包成 exe 可执行文件

# 图标:img.ico

pyinstaller -F -i img.ico  del_mac_files.py

Windows系统服务配置

为确保该清理程序能持续在后台运行,我们需要将其注册为系统服务,使可执行文件能够随系统启动或在后台静默执行。

这里使用instsrv.exe和srvany.exe这两个工具来便捷地创建系统服务。其中,instsrv.exe负责服务的创建与删除操作;srvany.exe则用于确保服务能够正常启动并运行。


# 注册服务

# instsrv.exe 服务名 

srvany.exec:\instsrv.exe del_mac_tempfile c:\srvany.exe

需要注意的是,在执行注册服务的命令时,必须以管理员权限运行CMD窗口来执行相关指令。

完成服务注册后,还需通过修改注册表,将新建的服务与具体的可执行程序路径关联起来。


# 注册表服务的目录

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

在注册表中定位到刚才创建的服务项,新建一个名为Parameters的项。在该项下创建两个字符串值,分别指向可执行文件的路径以及该文件所在的完整目录。

最后,使用services.msc命令打开服务管理控制台,找到目标服务,勾选“允许服务和桌面交互”,并启动该服务,将其启动类型设置为“自动”以实现开机自启。

最终效果与结论

3、结 果 结 论

通过上述配置的系统服务,每次插入移动硬盘时,系统都会自动触发遍历操作,查找并删除移动硬盘中的Mac临时文件。

以上就是利用python清除移动硬盘中的临时文件的详细内容,更多关于python 清除文件的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表