用Python脚本来删除指定容量以上的文件的教程


Posted in Python onMay 04, 2015

文件多了乱放, 突然有一天发现硬盘空间不够了, 于是写了个python脚本搜索所有大于10MB的文件,看看这些大文件有没有重复的副本,如果有,全部列出,以便手工删除

使用方式 加一个指定目录的参数

比如python redundant_remover.py /tmp

主要用到了stat模块,os、sys系统模块

import os, sys
#引入统计模块
from stat import *
BIG_FILE_THRESHOLD = 10000000L
dict1 = {}  # filesize 做 key, filename 做 value
dict2 = {}   # filename 做 key, filesize 做 value
def 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:
    pass
def 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)
Python 相关文章推荐
Python内置函数bin() oct()等实现进制转换
Dec 30 Python
Python中针对函数处理的特殊方法
Mar 06 Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
Jun 21 Python
python多线程之事件Event的使用详解
Apr 27 Python
Tensorflow卷积神经网络实例进阶
May 24 Python
Python使用combinations实现排列组合的方法
Nov 13 Python
Python3数字求和的实例
Feb 19 Python
python实现共轭梯度法
Jul 03 Python
django 类视图的使用方法详解
Jul 24 Python
python退出循环的方法
Jun 18 Python
PyCharm最新激活码PyCharm2020.2.3有效
Nov 18 Python
pycharm无法安装cv2模块问题
May 20 Python
编写Python脚本来获取Google搜索结果的示例
May 04 #Python
编写Python脚本来实现最简单的FTP下载的教程
May 04 #Python
Python下线程之间的共享和释放示例
May 04 #Python
简单介绍Python中利用生成器实现的并发编程
May 04 #Python
简单分析Python中用fork()函数生成的子进程
May 04 #Python
python实现从字典中删除元素的方法
May 04 #Python
Python中利用原始套接字进行网络编程的示例
May 04 #Python
You might like
收音机怀古---春雷3P7图片欣赏
2021/03/02 无线电
理解和运用PHP中的多态性[译]
2011/08/02 PHP
php 生成自动创建文件夹并上传文件的示例代码
2014/03/07 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
2014/08/22 PHP
详解将数据从Laravel传送到vue的四种方式
2019/10/16 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
2019/11/13 PHP
jQuery使用手册之二 DOM操作
2007/03/24 Javascript
关于document.cookie的使用javascript
2008/04/11 Javascript
Js动态创建div
2008/09/25 Javascript
javascript 进度条 实现代码
2009/07/30 Javascript
一段实现页面上的图片延时加载的js代码
2010/02/11 Javascript
window.open打开页面居中显示的示例代码
2013/12/27 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
实例讲解避免javascript冲突的方法
2016/01/03 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
2016/05/26 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
使用淘宝镜像cnpm安装Vue.js的图文教程
2018/05/17 Javascript
vue中rem的配置的方法示例
2018/08/30 Javascript
详解TypeScript+Vue 插件 vue-class-component的使用总结
2019/02/18 Javascript
js实现上传图片并显示图片名称
2019/12/18 Javascript
JavaScript数组去重实现方法小结
2020/01/17 Javascript
Python多维/嵌套字典数据无限遍历的实现
2016/11/04 Python
Python 模拟动态产生字母验证码图片功能
2019/12/24 Python
Python爬取365好书中小说代码实例
2020/02/28 Python
Python3 hashlib密码散列算法原理详解
2020/03/30 Python
python框架flask入门之路由及简单实现方法
2020/06/07 Python
3种方式实现瀑布流布局小结
2019/09/05 HTML / CSS
科颜氏美国官网:Kiehl’s美国
2017/01/31 全球购物
英语教育专业自荐信
2014/05/29 职场文书
会计系毕业求职信
2014/08/07 职场文书
2014年销售工作总结
2014/12/01 职场文书
简单的辞职信模板
2015/05/12 职场文书
nginx对http请求处理的各个阶段详析
2021/03/31 Servers
vue的项目如何打包上线
2022/04/13 Vue.js
Windows server 2012搭建FTP服务器
2022/04/29 Servers