用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的Scrapy爬虫框架简单学习笔记
Jan 20 Python
python生成随机图形验证码详解
Nov 08 Python
解决pycharm无法调用pip安装的包问题
May 18 Python
python实现批量修改图片格式和尺寸
Jun 07 Python
更改Python的pip install 默认安装依赖路径方法详解
Oct 27 Python
在python中实现将一张图片剪切成四份的方法
Dec 05 Python
基于OpenCV python3实现证件照换背景的方法
Mar 22 Python
详解python中sort排序使用
Mar 23 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
pycharm通过ssh连接远程服务器教程
Feb 12 Python
keras slice layer 层实现方式
Jun 11 Python
在keras里面实现计算f1-score的代码
Jun 15 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学习笔记 PHP面向对象的程序设计
2011/06/13 PHP
PHP循环结构实例讲解
2014/02/10 PHP
PHP中字符安全过滤函数使用小结
2015/02/25 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
thinkphp命名空间用法实例详解
2015/12/30 PHP
php菜单/评论数据递归分级算法的实现方法
2019/08/01 PHP
在PHP中实现使用Guzzle执行POST和GET请求
2019/10/15 PHP
JavaScript对象模型-执行模型
2008/04/28 Javascript
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
jWiard 基于JQuery的强大的向导控件介绍
2011/10/28 Javascript
使用jQuery validate 验证注册表单实例演示
2013/03/25 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
JS随机调用指定函数的方法
2015/07/01 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
JavaScript、C# URL编码、解码总结
2017/01/21 Javascript
websocket+node.js实现实时聊天系统问题咨询
2017/05/17 Javascript
深入理解JavaScript的值传递和引用传递
2018/10/24 Javascript
angular4应用中输入的最小值和最大值的方法
2019/05/17 Javascript
使用layui日期控件laydate对开始和结束时间进行联动控制的方法
2019/09/06 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
2020/02/28 Javascript
Python实现替换文件中指定内容的方法
2018/03/19 Python
Python csv文件的读写操作实例详解
2019/11/19 Python
一文了解python 3 字符串格式化 F-string 用法
2020/03/04 Python
Python使用socket模块实现简单tcp通信
2020/08/18 Python
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
SIDESTEP荷兰:在线购买鞋子
2019/11/18 全球购物
zooplus德国:便宜地订购动物用品、动物饲料、动物食品
2020/05/06 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
旅游管理专业学生求职信
2013/09/28 职场文书
文明生主要事迹
2014/05/25 职场文书
年终晚会活动方案
2014/08/21 职场文书
党组织领导班子整改方案
2014/10/25 职场文书
店长岗位职责
2015/02/11 职场文书
2015年领班工作总结
2015/04/29 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书