Python 实现删除某路径下文件及文件夹的脚本

#!/usr/bin/env python

import os

import shutil

delList = []

delDir = "/home/test"

delList = os.listdir(delDir )

for f in delList:

filePath = os.path.join( delDir, f )

if os.path.isfile(filePath):

os.remove(filePath)

print filePath + " was removed!"

elif os.path.isdir(filePath):

shutil.rmtree(filePath,True)

print "Directory: " + filePath +" was removed!"

shutil是一个高层次的文件操作模块。True参数表示ignore_errors(忽略拷贝时候的错误)。

类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好。

[附] os模块(库)的使用

有关文件夹与文件的查找,删除等功能 在 os 模块中实现。

一、取得当前目录 #1.1

s = os.getcwd()

# s 中保存的是当前的执行目录(即执行所在的文件夹)

[注意]

如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。

如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path[0]变量或者sys.argv[0]来获得 #1.2

import os

import time

folder = time.strftime(r"%Y-%m-%d_%H-%M-%S",time.localtime())

os.makedirs(r’%s/%s’%(os.getcwd(),folder))

二、更改当前目录

os.chdir( "/root/123") #将当前目录设为 "/root/123"

#说明: 当指定的目录不存在时,引发异常。

三、将一个路径名分解为目录名和文件名两部分

fpath , fname = os.path.split( "你要分解的路径")

例如:

a, b = os.path.split( "/root/123/test.txt" )

print a

print b

显示:

/root/123/

test.txt

四、分解文件名的扩展名

fpathandname , fext = os.path.splitext( "你要分解的路径")

例如:

a, b = os.path.splitext( "/root/123/test.txt" )

print a

print b

显示:

/root/123/test

.txt

五、判断一个路径( 目录或文件)是否存在

b = os.path.exists( "你要判断的路径")

返回值b: True 或 False

六、判断一个路径是否文件

b = os.path.isfile( "你要判断的路径")

返回值b: True 或 False

七、判断一个路径是否目录

b = os.path.isdir( "你要判断的路径")

返回值b: True 或 False

八、获取某目录中的文件及子目录的列表

L = os.listdir( "你要判断的路径")

例如:

L = os.listdir( "/root/123" )

print L

显示 : [‘test.txt’, ‘test.py’,’python’] #这里面既有文件也有子目录 九、创建子目录 os.makedirs( path )   # path 是"要创建的子目录" 例如: os.makedirs("/root/123") 调用有可能失败,可能的原因是: (1) path 已存在时(不管是文件还是文件夹) (2) 驱动器不存在 (3) 磁盘已满 (4)磁盘是只读的或没有写权限 十、删除子目录 os.rmdir( path )   # path: "要删除的子目录" 产生异常的可能原因: (1) path 不存在 (2) path 子目录中有文件或下级子目录 (3) 没有操作权限或只读 十一、删除文件 os.remove(   filename )   # filename: "要删除的文件名" 产生异常的可能原因: (1)   filename 不存在 (2) 对filename文件, 没有操作权限或只读。 十二、文件改名 os.name( oldfileName, newFilename) 产生异常的原因: (1) oldfilename 旧文件名不存在 (2) newFilename 新文件已经存在时,此时,您需要先删除 newFilename 文件。

python删除某个文件夹_Python 实现删除某路径下文件及文件夹相关推荐

  1. 如何批量修改文件后缀名(包含该路径下的所有文件夹)

    1.批量修改某个文件夹目录下的所有文件的后缀名 方法非常简单,在该目录下,新建一个文本,此时文件后缀名是.txt.编辑该文本,文本内容为: ren *.ans *.out 此处的意思是将所有的.ans ...

  2. Matlab打开文件替换变量,读取matlab某个路径下的“.mat”文件,改变文件中的内容,并以原名字,变量保存...

    close all clear all clc matList=dir('*.mat');%寻找当前路径下的'.mat'文件 numberofMat=length(matList);%查看" ...

  3. php 删除文件夹及文件夹,php删除一个路径下的所有文件夹和文件的方法

    php遍历一个文件夹内的所有文件和文件夹,并删除所有文件夹和子文件夹下的所有文件的代码,通过递归方式实现达到清空一个目录的效果,代码简单实用. 也适合在thinkphp中清理缓存,在thinkphp中 ...

  4. PHP如何删除一个路径下的所有文件夹和文件教程

    PHP如何删除一个路径下的所有文件夹和文件?等资源,欢迎您收藏本站,我们将为您提供最新的PHP如何删除一个路径下的所有文件夹和文件?资源 PHP如何删除一个路径下的所有文件夹和文件?下面本篇文章给大家 ...

  5. 删除某路径下所有空文件夹

    目的:删除某路径下所有空文件夹(包括其子文件夹) 原理:检测文件夹(及其子文件夹)下所有文件的大小,若为0,则删除该文件夹 输出:1.被删除的文件夹名 2.被删除文件夹数量(未计算子文件夹) '删除某 ...

  6. PHP删除一个路径下的所有文件夹和文件的方法

    用到的函数: scandir($path) 遍历一个文件夹所有文件并返回数组. unlink($filename) 删除文件. rmdir($path) 只删除空文件夹 代码: 删除单个文件 $fil ...

  7. python脚本怎么打印日志_python 接口测试1 --如何创建和打印日志文件

    python自带的logging实在是不好用,推荐使用logbook 思路如下: 1.创建path.py文件,获取工程根路径 2.创建log.py文件,在工程根路径下创建日志文件(文件名称按日期命名) ...

  8. python listdir 共享目录 认证_Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法...

    在python3.6版本中去掉了os.path.walk()函数 os.walk() 函数声明:walk(top,topdown=True,oneerror=None) 1.参数top表示需要遍历的目 ...

  9. python os.walk遍历目录_python中os.walk()遍历目录中所有文件

    之前一直用判断目录和文件的递归方法来获取一个目录下的所有文件,后来发现python里面已经写好了这个函数,不需要自己递归获取了,记录下os.walk()函数的用法 目的:获取path下所有文件,返回由 ...

  10. 【Python学习笔记(二)】使用Pyinstaller将不同路径下的py文件打包成exe可执行文件

    ** 使用Pyinstaller将不同路径下的py文件打包成exe可执行文件 ** ** 前言 在Windows环境下需要打包一个python项目成exe可执行文件,共有一个主函数BomSoftwar ...

最新文章

  1. NBT:线虫的工程细菌共生体提高对西方玉米根虫的生防潜力
  2. 沃尔玛开设智慧零售实验室,正面硬刚 Amazon Go
  3. 远程桌面连接CentOS7
  4. JSDoc --JS API文档生成器
  5. 程序员都长得丑?颜值底线是程序员?
  6. js java用var_Java基础———JavaScript基础知识
  7. 如何在PHP里面连接数据库?
  8. 设计模式快速学习(五)原型模式
  9. 工作工资不高,很普通的一个我
  10. 刻字机软件工具:::Easy Cut Studio
  11. 2021-2027全球与中国便携式VOC气体检测仪市场现状及未来发展趋势
  12. [渝粤教育] 西南科技大学 广告学 在线考试复习资料
  13. AD9的pcb 里面怎样才能从TOP层视图换成从BOTTOM层网上面看,相当于把板子翻过来看
  14. Java gateway process exited before sending its port number
  15. JAVA 并发编程之三:CountDownLatch(门闩)、CyclicBarrier(栅栏)和Semaphore(信号量) 三种并发策略
  16. 数据库(mysql)之用户管理
  17. 我的世界梦之边缘5服务器在维护吗,我的世界梦之边缘V 第一个包含动漫CG剧情的RPG服务器...
  18. 人工神经网络的算法原理,神经网络算法的原理是
  19. Android 手机存储及路径
  20. 处理器与安装内存显示不可用

热门文章

  1. linux 启动rsyslog服务_我的服务器怎么老这么慢,难道说是被挖矿了?linux开机启动项自查...
  2. 机器学习实战 梯度上升 数学推导_机器学习全路线经典书籍
  3. 计算机名称 steam,Steam电脑配置排名:前19名都是N卡
  4. C语言之字符串探究(二):字符串原生操作——strlen、strcat、strcpy、strcmp自实现
  5. 限定位宽比较大小_自己之前买电脑整理的一些电脑知识,比较粗糙,仅供参考。...
  6. HTML标记也可以乘坐标签,XHTML标签都有一个结束标记
  7. linux无法找到网卡6,CentOS 6/7克隆主机网卡无法启动解决
  8. hc sr04流程图_HC-SR04超声模块示例代码/原理图/说明书等全套资料
  9. oracle包同义词报错,Oracle——04同义词与数据库链接
  10. 找回华为云删除的通讯录_找回小米手机误删照片只要10秒!人人都知道的方法,你怎能不知道...