欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)的文件夾清理程序分享

 更新時(shí)間:2014年11月22日 15:30:25   投稿:junjie  
這篇文章主要介紹了python實(shí)現(xiàn)的文件夾清理程序分享,可以按時(shí)間清理和指定配置文件清理,需要的朋友可以參考下

使用:

復(fù)制代碼 代碼如下:

foldercleanup.py -d 10 -k c:\test\keepfile.txt c:\test

表示對c:\test目錄只保留最近10天的子文件夾和keepfile.txt中指定的子文件夾。

代碼:

復(fù)制代碼 代碼如下:

import os
import os.path
import datetime
 
def getOption():
  from optparse import OptionParser
 
  des   = "clean up the folder with some options"
  prog  = "foldercleanup"
  ver   = "%prog 0.0.1"
  usage = "%prog [options] foldername"
 
  p = OptionParser(description=des, prog=prog, version=ver, usage=usage,add_help_option=True)
  p.add_option('-d','--days',action='store',type='string',dest='days',help="keep the subfolders which are created in recent %days% days")
  p.add_option('-k','--keepfile',action='store',type='string',dest='keepfile',help="keep the subfolders which are recorded in text file %keepfile% ")
  options, arguments = p.parse_args()
 
  if len(arguments) != 1:
    print("error: must input one directory as only one parameter ")
    return
 
  return options.days, options.keepfile, arguments[0] 

 
def preCheckDir(dir):
  if(not os.path.exists(dir)):
    print("error: the directory your input is not existed")
    return
  if(not os.path.isdir(dir)):
    print ("error: the parameter your input is not a directory")
    return
   
  return os.path.abspath(dir)
 
def isKeepByDay(dir, day):
  indays = False
  if( day is not None) :
    t = os.path.getctime(dir)
    today = datetime.date.today()
    createdate = datetime.date.fromtimestamp(t)
    indate = today - datetime.timedelta(days = int(day))
    print (createdate)
    if(createdate >= indate):
      indays = True
  print (indays)
  return indays
 
def isKeepByKeepfile(dir, keepfile):
  needkeep = False
  print (dir)
  if (keepfile is not None):
    try :
      kf = open(keepfile,"r")
      for f in kf.readlines():
        print (f)
        if (dir.upper().endswith("\\" + f.strip().upper())):
          needkeep = True
      kf.close()
    except:
      print ("error: keep file cannot be opened")
  print(needkeep)
  return needkeep
   
def removeSubFolders(dir, day, keepfile):
  subdirs = os.listdir(dir)
  for subdir in subdirs:
    subdir = os.path.join(dir,subdir)
    if ( not os.path.isdir(subdir)):
      continue
    print("----------------------")
    if( (not isKeepByDay(subdir, day))and (not isKeepByKeepfile(subdir, keepfile))):
      print("remove subfolder: " + subdir)
      import shutil
      shutil.rmtree(subdir,True)
   
def FolderCleanUp():
  (day, keepfile, dir) = getOption()
  dir = preCheckDir(dir)
  if dir is None:
    return
  removeSubFolders(dir,day,keepfile)
 
if __name__=='__main__':
  FolderCleanUp()

對目錄下保留最后的zip文件:

復(fù)制代碼 代碼如下:

def KeepLastNumZips(num)
    def extractTime(f):
        return os.path.getctime(f)

    zipfiles = [os.path.join(zipdir, f)
                for f in os.listdir(zipdir)
                if os.path.splitext(f)[1] == ".zip"]
    if len(zipfiles) > num:
        zipfiles.sort(key=extractTime, reverse=True)
        for i in range(num, len(zipfiles)):
            os.remove(zipfiles[i])

相關(guān)文章

  • OpenCV MediaPipe實(shí)現(xiàn)顏值打分功能

    OpenCV MediaPipe實(shí)現(xiàn)顏值打分功能

    這篇文章主要介紹了通過OpenCV MediaPipe實(shí)現(xiàn)攝像頭實(shí)時(shí)檢測顏值打分功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定的幫助,感興趣的可以了解一下
    2021-12-12
  • Python編程深度學(xué)習(xí)繪圖庫之matplotlib

    Python編程深度學(xué)習(xí)繪圖庫之matplotlib

    今天小編就為大家分享一篇關(guān)于Python編程深度學(xué)習(xí)繪圖庫之matplotlib,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • Python實(shí)現(xiàn)給PDF添加水印的方法

    Python實(shí)現(xiàn)給PDF添加水印的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)給PDF添加水印的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • go和python變量賦值遇到的一個(gè)問題

    go和python變量賦值遇到的一個(gè)問題

    這篇文章主要介紹了go和python變量賦值遇到的一個(gè)問題的相關(guān)資料,需要的朋友可以參考下
    2017-08-08
  • Python之循環(huán)結(jié)構(gòu)

    Python之循環(huán)結(jié)構(gòu)

    今天小編就為大家分享一篇關(guān)于Python之循環(huán)結(jié)構(gòu),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • pandas中DataFrame重置索引的幾種方法

    pandas中DataFrame重置索引的幾種方法

    在pandas中,經(jīng)常對數(shù)據(jù)進(jìn)行處理 而導(dǎo)致數(shù)據(jù)索引順序混亂,從而影響數(shù)據(jù)讀取、插入等,所以小編總結(jié)了幾種索引重置的方法,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Django Paginator分頁器的使用示例

    Django Paginator分頁器的使用示例

    django內(nèi)置的分頁器組件,能夠幫我們實(shí)現(xiàn)對查詢的數(shù)據(jù)進(jìn)行自動(dòng)分頁,并返回分頁對象,本文講解分頁器的用法
    2021-06-06
  • python教程之用py2exe將PY文件轉(zhuǎn)成EXE文件

    python教程之用py2exe將PY文件轉(zhuǎn)成EXE文件

    py2exe是一個(gè)將python腳本轉(zhuǎn)換成windows上的可獨(dú)立執(zhí)行的可執(zhí)行程序(*.exe)的工具,這樣,你就可以不用裝python而在windows系統(tǒng)上運(yùn)行這個(gè)可執(zhí)行程序。
    2014-06-06
  • Python中的?if?語句及使用方法

    Python中的?if?語句及使用方法

    這篇文章主要介紹了Python中的?if?語句及使用方法,包括條件測試、if?-else?語句、if?-elif-else?語句以及使用?if?語句處理列表操作,下面內(nèi)容詳細(xì)介紹組要的小伙伴可以參考一下
    2022-03-03
  • Python進(jìn)行特征提取的示例代碼

    Python進(jìn)行特征提取的示例代碼

    這篇文章主要介紹了Python進(jìn)行特征提取的示例代碼,幫助大家更好的進(jìn)行數(shù)據(jù)分析,感興趣的朋友可以了解下
    2020-10-10

最新評論