代码之家  ›  专栏  ›  技术社区  ›  Mahesh G

如何删除x天以上的子目录中的所有文件,而不是在python中的星期日创建的文件

  •  0
  • Mahesh G  · 技术社区  · 7 年前

    我想找到一个解决方案,删除 子目录 以及超过x天,如果文件创建于 星期日

    我的主文件夹路径是C:\MAIN\U文件夹,而不是我的结构,

    +---Sub_Folder_1
    |       Day1.xlsx
    |       Day2.xlsx
    |       Day3.xlsx
    |
    +---Sub_Folder_2
    |       Day1.xlsx
    |       Day2.xlsx
    |       Day3.xlsx
    |
    \---Sub_Folder_3
            Day1.xlsx
            Day2.xlsx
            Day3.xlsx
    

    我尝试使用下面的代码,但它也会删除甚至子目录。

    import os, shutil
    folder = 'C:\\Main_Folder\\'
    for the_file in os.listdir(folder):
        file_path = os.path.join(folder, the_file)
        try:
            if os.path.isfile(file_path):
                os.unlink(file_path)
            elif os.path.isdir(file_path): shutil.rmtree(file_path)
        except Exception as e:
            print(e)
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   Xavid Ramirez    7 年前

    import os.path, time

    print("Last Modified: %s" % time.ctime(os.path.getmtime("file.txt")))
    # Last Modified: Mon Jul 30 11:10:21 2018
    print("Created: %s" % time.ctime(os.path.getctime('file.txt')))
    # Created: Tue Jul 31 09:13:23 2018
    

    Sun, Mon, Tue, Wed, Thur, Fri, Sat

    fileDate = time.ctime(os.path.getmtime('file.txt'))
    if 'Sun' not in fileDate:
      # Sun for Sunday is not in the time string so check the date and time