用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之模块的加载
Oct 24 Python
Python使用PIL模块生成随机验证码
Nov 21 Python
python使用os.listdir和os.walk获得文件的路径的方法
Dec 16 Python
pytorch构建网络模型的4种方法
Apr 13 Python
python pandas 对series和dataframe的重置索引reindex方法
Jun 07 Python
Python不使用int()函数把字符串转换为数字的方法
Jul 09 Python
Python django框架应用中实现获取访问者ip地址示例
May 17 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
Aug 19 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例
Mar 06 Python
python3 实现口罩抽签的功能
Mar 11 Python
如何利用Python动态模拟太阳系运转
Sep 04 Python
利用Matlab绘制各类特殊图形的实例代码
Jul 16 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
PHP Smarty生成EXCEL文档的代码
2008/08/23 PHP
PHP XML备份Mysql数据库
2009/05/27 PHP
php addslashes 函数详细分析说明
2009/06/23 PHP
PHP5多态性与动态绑定介绍
2015/04/03 PHP
PHP7 其他语言层面的修改
2021/03/09 PHP
javascript json2 使用方法
2010/03/16 Javascript
JavaScript全局函数使用简单说明
2011/03/11 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
js的一些常用方法小结
2011/06/29 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
浅谈关于JavaScript API设计的一些建议和准则
2015/06/24 Javascript
JS模拟实现Select效果代码
2015/09/24 Javascript
JavaScript数据类型学习笔记
2016/01/25 Javascript
JS实现动态增加和删除li标签行的实例代码
2016/10/16 Javascript
JS简单获取日期相差天数的方法
2017/04/24 Javascript
详解webpack模块加载器兼打包工具
2018/09/11 Javascript
javascript实现前端成语点击验证优化
2020/06/24 Javascript
JavaScript实现HTML导航栏下拉菜单
2020/11/25 Javascript
python fabric实现远程操作和部署示例
2014/03/25 Python
python魔法方法-属性访问控制详解
2016/07/25 Python
python实现的多线程端口扫描功能示例
2017/01/21 Python
Python图像滤波处理操作示例【基于ImageFilter类】
2019/01/03 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
CSS3不透明度实例讲解
2016/04/26 HTML / CSS
娇韵诗香港官网:Clarins香港
2020/08/13 全球购物
庆中秋节主题活动方案
2014/02/03 职场文书
幼儿园中班教学反思
2014/02/10 职场文书
捐书倡议书
2014/08/29 职场文书
骨干教师个人总结
2015/02/11 职场文书
团拜会主持词
2015/07/04 职场文书
《观潮》教学反思
2016/02/17 职场文书
Nginx本地目录映射实现代码实例
2021/03/31 Servers
(开源)微信小程序+mqtt,esp8266温湿度读取
2021/04/02 Javascript
Python图像处理库PIL详细使用说明
2022/04/06 Python