国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中使用glob和rmtree刪除目錄子目錄及所有文件的例子

2020-02-23 06:13:00
字體:
供稿:網(wǎng)友

一、batch與shell中

目錄及文件:
代碼如下:
C:/TESTFOLDER/TEST
├─Test2
└─Test3
        test.txt

刪除目錄及其下的所有文件:
代碼如下:
rmdir /S /Q c:/TestFolder/test

刪除所有目錄下的文件,但是目錄結(jié)構(gòu)不能被刪除:
代碼如下:
del /F /S /Q c:/TestFolder/test/*

Linux類似的命令為:
代碼如下:
rm /rf /home/aaa/test

二、python中

:注意如果有錯(cuò)誤會(huì)有異常拋出,需要處理異常。

1)刪除文件且不支持通配符: os.remove()
2) 刪除空的目錄: os.rmdir()
3) 刪除空的目錄及子目錄: os.removedirs()
3) 刪除目錄及其子目錄中的文件:shutil.rmtree()

rmtree+異常處理:

代碼如下:
#code:
import shutil
def retreeExceptionHandler(fun,path,excinfo):
  print("Error:" + path)
  print(excinfo[1])
 
shutil.rmtree('c://testfolder//test',ignore_errors=False,onerror=retreeExceptionHandler)
 
#result:
Error:c:/testfolder/test/Test3
[Error 32] The process cannot access the file because it is being used by another process: 'c://testfolder//test//Test3'
Error:c:/testfolder/test
[Error 145] The directory is not empty: 'c://testfolder//test'

使用rmdir和remove等價(jià)于rmtree:

代碼如下:
#! /usr/bin/env python 
#coding=utf-8 
## {{{ Recipe 193736 (r1): Clean up a directory tree  
""" removeall.py:
 
   Clean up a directory tree from root.
   The directory need not be empty.
   The starting directory is not deleted.
   Written by: Anand B Pillai <abpillai@lycos.com> """ 
 
import sys, os 
 
ERROR_STR= """Error removing %(path)s, %(error)s """ 
 
def rmgeneric(path, __func__): 
 
    try: 
        __func__(path) 
        print 'Removed ', path 
    except OSError, (errno, strerror): 
        print ERROR_STR % {'path' : path, 'error': strerror } 
             
def removeall(path): 
 
    if not os.path.isdir(path): 
        return 
     
    files=os.listdir(path) 
 
    for x in files: 
        fullpath=os.path.join(path, x) 
        if os.path.isfile(fullpath): 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 唐海县| 崇礼县| 柞水县| 梨树县| 沅陵县| 新和县| 墨脱县| 丹东市| 图木舒克市| 大丰市| 会泽县| 原平市| 平邑县| 海林市| 轮台县| 丹棱县| 江陵县| 吐鲁番市| 科尔| 莒南县| 德安县| 甘孜县| 深水埗区| 宁陵县| 教育| 兴海县| 敖汉旗| 新干县| 海伦市| 鄯善县| 新田县| 雅安市| 绥宁县| 西乌珠穆沁旗| 宜黄县| 海城市| 四会市| 中方县| 北碚区| 息烽县| 桑日县|