删除过期文件或文件夹

import os
import datetime
import shutil

def clean_old_files_and_folders(directory_path, days_threshold=2):
    """
    清理目录中超过指定天数阈值的文件和文件夹。

    参数:
    directory_path (str): 要清理的目录路径。
    days_threshold (int): 天数阈值,文件和文件夹超过此阈值将被删除。默认值为2天。
    """

    current_datetime = datetime.datetime.now()

    for item in os.listdir(directory_path):
        item_path = os.path.join(directory_path, item)

        if os.path.isfile(item_path):
            file_created_time = datetime.datetime.fromtimestamp(os.path.getctime(item_path))
            days_since_creation = (current_datetime - file_created_time).days

            if days_since_creation > days_threshold:
                os.remove(item_path)
                print(f"Deleted file: {item_path}")

        elif os.path.isdir(item_path):
            folder_created_time = datetime.datetime.fromtimestamp(os.path.getctime(item_path))
            days_since_creation = (current_datetime - folder_created_time).days

            if days_since_creation > days_threshold:
                shutil.rmtree(item_path)
                print(f"Deleted folder: {item_path}")


if __name__ == '__main__':

    # 示例用法
    directory_to_clean = 'D:\mrp_rpa_bak'
    clean_old_files_and_folders(directory_to_clean)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值