使用Python大量刪除檔案清單

來源:互聯網
上載者:User

                 使用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()
#關閉檔案對象

本文出自 “Focus on the database” 部落格,請務必保留此出處http://lgdvsehome.blog.51cto.com/3360656/1241765

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.