用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 相关文章推荐
在MAC上搭建python数据分析开发环境
Jan 26 Python
对pandas中iloc,loc取数据差别及按条件取值的方法详解
Nov 06 Python
pandas通过索引进行排序的示例
Nov 16 Python
python实现五子棋游戏
Jun 18 Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
Aug 06 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
Oct 04 Python
python分布式计算dispy的使用详解
Dec 22 Python
Python爬虫爬取微信朋友圈
Aug 06 Python
如何基于Python按行合并两个txt
Nov 03 Python
使用PyCharm官方中文语言包汉化PyCharm
Nov 18 Python
详解Django自定义图片和文件上传路径(upload_to)的2种方式
Dec 01 Python
python全面解析接口返回数据
Feb 12 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 字符比较代码
2011/02/27 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
2014/06/09 PHP
php中ob_get_length缓冲与获取缓冲长度实例
2014/11/20 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
JQUERY CHECKBOX全选,取消全选,反选方法三
2008/08/30 Javascript
使用Jquery搭建最佳用户体验的登录页面之记住密码自动登录功能(含后台代码)
2011/07/10 Javascript
javascript实现playfair和hill密码算法
2014/12/07 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
Bootstrap弹出框之自定义悬停框标题、内容和样式示例代码
2017/07/11 Javascript
详解Puppeteer 入门教程
2018/05/09 Javascript
vue使用jsonp抓取qq音乐数据的方法
2018/06/21 Javascript
JS中自定义事件的使用与触发操作实例分析
2019/11/01 Javascript
jQuery三组基本动画与自定义动画操作实例总结
2020/05/09 jQuery
解决echarts 一条柱状图显示两个值,类似进度条的问题
2020/07/20 Javascript
[06:20]2015国际邀请赛第三日top10
2015/08/08 DOTA
[01:31:03]DOTA2完美盛典全回顾 见证十五项大奖花落谁家
2017/11/28 DOTA
[01:03:42]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python线程池的实现实例
2013/11/18 Python
python3利用venv配置虚拟环境及过程中的小问题小结
2018/08/01 Python
python使用udp实现聊天器功能
2018/12/10 Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
2019/03/05 Python
Python 用matplotlib画以时间日期为x轴的图像
2019/08/06 Python
keras实现VGG16方式(预测一张图片)
2020/07/07 Python
python 用struct模块解决黏包问题
2020/11/07 Python
css3中单位px,em,rem,vh,vw,vmin,vmax的区别及浏览器支持情况
2016/12/06 HTML / CSS
奥地利体育网上商店:Gigasport
2019/10/09 全球购物
单位领导证婚词
2014/01/14 职场文书
党的群众路线教育实践活动对照检查剖析材料
2014/10/09 职场文书
个人贷款收入证明
2014/10/26 职场文书
护士年终个人总结
2015/02/13 职场文书
酒店工程部经理岗位职责
2015/04/09 职场文书
2015年社区消防安全工作总结
2015/10/14 职场文书
2016年感恩节活动总结大全
2016/04/01 职场文书
导游词之重庆钓鱼城
2019/09/19 职场文书
JS实现简单九宫格抽奖
2022/06/28 Javascript