python移除系統多餘大檔案

來源:互聯網
上載者:User
檔案多了亂放, 突然有一天發現硬碟空間不夠了, 於是寫了個python指令碼搜尋所有大於10MB的檔案,看看這些大檔案有沒有重複的副本,如果有,全部列出,以便手工刪除

使用方式 加一個指定目錄的參數

比如python redundant_remover.py /tmp

主要用到了stat模組,os、sys系統模組

import os, sys#引入統計模組from stat import *BIG_FILE_THRESHOLD = 10000000Ldict1 = {}    # filesize 做 key, filename 做 valuedict2 = {}     # filename 做 key, filesize 做 valuedef treewalk(path):    try:        for i in os.listdir(path):            mode = os.stat(path+"/"+i).st_mode            if S_ISDIR(mode) <> True:                filename = path+"/"+i                filesize = os.stat(filename).st_size                if filesize > BIG_FILE_THRESHOLD:                    if filesize in dict1:                                              dict2[filename] = filesize                        dict2[dict1[filesize]]=filesize                    else:                        dict1[filesize] = filename                             else:                treewalk(path+"/"+i)    except WindowsError:        passdef printdict(finaldict):    for i_size in finaldict.values():        print i_size        for j_name in finaldict.keys():            if finaldict[j_name] == i_size:                print j_name        print "\n"if __name__=="__main__":    treewalk(sys.argv[1])    printdict(dict2)
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.