使用Python批量删除文件列表

环境:

已知要删除的文件列表,即确定哪些文件要删除。

代码如下:

#!/usr/bin/env python

#coding=utf-8

#目的:本程序主要为删除给定的文件列表

import os

import shutil

#引入模块,os为包含普遍的操作系统功能;shutil为文件操作工具的模块

count_not_exist = 0

count_exist_but_dir = 0

count_del_file = 0

backup_dir = '/backup_file/'

pre_dir_of_file = '/var/www/virtualhost/admin.51auto.cn/'

#定义所使用的变量

file_object = open('/tmp/delete.txt')

#打开文件

for line in file_object.readlines():

#读取文件

line = line.rstrip('\n')

#去除每行末尾的'\n'符号

if os.path.exists(line):

#判定line文件或目录在系统上存在

if os.path.isfile(line):

#判定line为文件

new_line = line.replace(pre_dir_of_file,backup_dir)

#替换line中指定目录部分

file_path = os.path.dirname(new_line)

#取出new_line文件的目录结构

if not os.path.exists(file_path):

#判定new_line文件的目录结构是否存在

os.makedirs(file_path)

#其目录不存,创建目录

print file_path + ' :The File Path Create Succeed!'

shutil.copy2(line,file_path)

#将文件备份到指定的备份目录

os.remove(line)

#删除文件

count_del_file += 1

else:

print line + " :It's a directory."

count_exist_but_dir += 1

else:

print line + ' :The Object is not exists.'

count_not_exist += 1

print str(count_not_exist) + ':The number of objects not exist on the system.'

print str(count_exist_but_dir) + " :The number of objects exist,but it's directory."

print  str(count_del_file) + ' :The number of objects deleted in right.'

#打印统计变量的值

file_object.close()

#关闭文件对象

python删除文件和linux删除文件区别_使用Python批量删除文件列表相关推荐

  1. python与其他的数据分析有什么区别_学好python和数据分析有什么关系?

    1. 应用数学.统计学.金融学等相关专业,硕士及以上学历. 2. 有良好的产品Sense和商业敏感度,有2年以上电商.物流.零售等数据分析经验. 3. 精通SQL,有一定的Python或者R编程能力, ...

  2. python字符串和字节串有什么区别_对于Python中的字节串bytes和字符串以及转义字符的新的认识...

    事情的起因是之前同学叫我帮他用Python修改一个压缩包的二进制内容用来做fuzz,根据他的要求,把压缩包test.rar以十六进制的方式打开,每次修改其中一个十六进制字符串并保存为一个新的rar用来 ...

  3. python中构造方法和析构方法的区别_基于Python构造方法与析构方法的研究

    基于 Python 构造方法与析构方法的研究 林观德 [期刊名称] < <现代职业教育> > [年 ( 卷 ), 期] 2019(000)018 [摘要] Python 语言是 ...

  4. python装饰器两层和三层区别_学习python的第十五天(函数的装饰器,两层装饰器和三层装饰器)...

    06.01自我总结 一.装饰器 1.函数装饰圈的定义 函数装饰器:一种装饰函数的函数 2.个人理解两层函数装饰器 两层函数装饰器个人觉得他其实就是把需要装饰的函数名丢入形参,然后用一个嵌套的函数对其头 ...

  5. linux系统下shell命令使用通配符批量创建文件或目录

    linux系统下shell命令使用通配符批量创建文件或目录 批量创建log文件 批量创建文件夹 批量删除目录 批量创建log文件 touch {1..5}.log 批量创建文件夹 mkdir dir_ ...

  6. 批量删除,未勾选数据,点击【批量删除】弹出确认删除提示框

    批量删除,未勾选数据,点击[批量删除]弹出确认删除提示框 给table组件,添加ref="selections" 在分页方法中,添加方法.设置为空

  7. java 批量删除数据_一种批量删除数据的方法

    这两天碰见一个比较紧急的生产问题,由于还在处理中,所以暂时不能给出整体描述,但其中涉及的一个问题就是删除一张大表中的过期历史数据,针对不同的类型的表可能有不同的解决方法,比如若是按照时间做的分区表,d ...

  8. excel 删除空白列的三种方法,以及如何批量删除空行空列

    详见:excel删除空白列的三种方法,以及如何批量删除空行空列 本人更倾向于第三种方法: excel删除空白列方法三: 按ALT+F11,打开VBE编辑器,插入--模块,复制下面代码,然后按F5键,运 ...

  9. 如何快速删除公众号发布的文章?教你一键批量删除公众号文章【图文教程】

    如何快速删除公众号发布的文章?教你一键批量删除公众号文章[图文教程] https://www.hechangquan.com/how/635.html

最新文章

  1. Nature子刊:使用MinION快速分析早产儿肠道菌群谱并鉴定抗生素抗性致病菌
  2. Hibernate查询语言(HQL)
  3. 51Nod5105 子矩阵求和
  4. 计算机视觉领域,计算机视觉
  5. javafx + jfoenix相关学习资料地址整理
  6. nginx下面server配置
  7. 设计时晶振的问题库(z)
  8. 硬件:台式机老式键盘知识科普
  9. 到底什么是分布式系统
  10. Ubuntu 15.10 默认壁纸?
  11. Java线程的同步 - synchronized
  12. IIS安装前已经安装了.NET Framework,安装后如何启用.NETFramework
  13. 华为18级工程师三年心血终成趣谈网络协议文档(附详细讲解)
  14. 抖音短视频 产品需求文档
  15. Laravel 获取文件并保存
  16. kaldi中fbank特征提取详解(结合源码,深度剖析)
  17. 魔窗--H5网页唤醒APP
  18. java颜色识别_Java颜色检测
  19. 经济学基础(本)【1】
  20. 3D游戏编程与设计-游戏分类与热点探索

热门文章

  1. python celery应用场景_python celery 模块
  2. mysql event 变量_mysql 中event的用法
  3. C语言 二维数组定义和使用 - C语言零基础入门教程
  4. Python format 函数- Python零基础入门教程
  5. 企业开发需要的git提交和拉取代码(本地仓库和github演示)
  6. Oracle 11g ora 15018,oracle 11gR2 RAC root.sh 错误 ORA-15072 ORA-15018
  7. tl494c封装区别_TL494参数,功能介绍,TL494应用电路图,封装,管脚及TL494 PDF中文资料手册...
  8. html自定义js程序,JS中微信小程序自定义底部弹出框
  9. python notebook配置_使用 Jupyter Notebook 配置 Stata\Python\Julia\R
  10. 妲己机器人怎么升级固件_台湾重金设计的3D妲己,亮瞎了