lmomfe

导航

 

一、职场痛点

电脑办公文件杂乱无章、旧文件堆积占用内存、重要文件未备份易丢失、月度文件归档耗时。本文通过Python实现文件自动分类、批量备份、过期文件清理、自动归档,一键整理所有办公文件。

二、五大文件自动化实战脚本

1. 按文件类型自动分类整理

import os
import shutil

# 定义文件类型对应文件夹
file_type = {
    "表格": [".xlsx", ".xls", ".csv"],
    "文档": [".docx", ".doc", ".pdf"],
    "图片": [".png", ".jpg", ".jpeg"],
    "压缩包": [".zip", ".rar"]
}

# 待整理文件夹路径
target_path = r"C:\Users\XXX\Desktop\杂乱办公文件"

# 遍历分类文件
for file in os.listdir(target_path):
    file_suffix = os.path.splitext(file)[1]
    file_old_path = os.path.join(target_path, file)
    # 匹配文件类型分类
    for folder, suffix_list in file_type.items():
        if file_suffix in suffix_list:
            folder_path = os.path.join(target_path, folder)
            if not os.path.exists(folder_path):
                os.mkdir(folder_path)
            # 移动文件到对应文件夹
            shutil.move(file_old_path, os.path.join(folder_path, file))
print("文件自动分类整理完成!")

2. 重要文件批量备份

import shutil
import time

# 源文件夹、备份文件夹
source_path = r"C:\Users\XXX\Desktop\核心工作文件"
backup_path = r"C:\Users\XXX\Desktop\文件备份\备份_"+time.strftime("%Y%m%d")

# 批量备份文件夹
shutil.copytree(source_path, backup_path)
print(f"文件备份完成!备份路径:{backup_path}")

3. 自动清理过期临时文件

import os
import time

# 清理7天前的文件
def clean_old_file(path, day=7):
    now_time = time.time()
    for file in os.listdir(path):
        file_path = os.path.join(path, file)
        # 获取文件修改时间
        file_time = os.path.getmtime(file_path)
        # 超过7天删除
        if now_time - file_time > day * 86400:
            if os.path.isfile(file_path):
                os.remove(file_path)
                print(f"已清理过期文件:{file}")

clean_old_file(r"C:\Users\XXX\Desktop\临时文件")

4. 批量压缩归档文件

import shutil
import time

# 压缩文件夹为zip归档包
archive_path = shutil.make_archive(
    base_name="月度文件归档_"+time.strftime("%Y%m"),
    format="zip",
    root_dir=r"C:\Users\XXX\Desktop\已整理文件"
)
print(f"文件归档压缩完成:{archive_path}")

5. 自动统计文件数量与大小

import os

def count_file_info(path):
    file_count = 0
    total_size = 0
    for root, dirs, files in os.walk(path):
        file_count += len(files)
        for file in files:
            size = os.path.getsize(os.path.join(root, file))
            total_size += size
    # 转换为MB单位
    total_mb = total_size / 1024 / 1024
    print(f"文件总数:{file_count} 个")
    print(f"总大小:{total_mb:.2f} MB")

count_file_info(r"C:\Users\XXX\Desktop\办公文件")

三、职场落地建议

1、可结合定时任务,实现每日自动备份、每周自动整理文件;
2、区分核心文件和临时文件,避免误删重要资料;
3、归档文件统一命名格式,便于后期查找检索。
posted on 2026-07-20 21:57  lmomfe  阅读(3)  评论(0)    收藏  举报