python自動zip壓縮目錄的方法

來源:互聯網
上載者:User
本文執行個體講述了python自動zip壓縮目錄的方法。分享給大家供大家參考。具體實現方法如下:

這段代碼來壓縮Database Backup檔案,沒有使用python內建的zip模組,而是使用了zip.exe檔案

# Hello, this script is written in Python - http://www.python.org## autozip.py 1.0p## This script will scan a directory (and its subdirectories)# and automatically zip files (according to their extensions).## This script does not use Python internal ZIP routines.# InfoZip's ZIP.EXE must be present in the path (InfoZip Dos version 2.3).# (zip23x.zip at http://www.info-zip.org/pub/infozip/)## Each file will be zipped under the same name (with the .zip extension)# eg. toto.bak will be zipped to toto.zip## This script is public domain. Feel free to reuse it.# The author is:#    Sebastien SAUVAGE#    #    http://sebsauvage.net## More quick & dirty scripts are available at http://sebsauvage.net/python/## Directory to scan is hardcoded at the end of the script.# Extensions to ZIP are hardcoded below:ext_list = ['.bak','.trn']import os.path, stringdef autozip( directory ):  os.path.walk(directory,walk_callback,'')def walk_callback(args,directory,files):  print 'Scanning',directory  for fileName in files:    if os.path.isfile(os.path.join(directory,fileName)) and string.lower(os.path.splitext(fileName)[1]) in ext_list:      zipMyFile ( os.path.join(directory,fileName) )def zipMyFile ( fileName ):  os.chdir( os.path.dirname(fileName) )  zipFilename = os.path.splitext(os.path.basename(fileName))[0]+".zip"  print ' Zipping to '+ zipFilename  os.system('zip -mj9 "'+zipFilename+'" "'+fileName+'"')autozip( r'C:\mydirectory' )print "All done."

希望本文所述對大家的Python程式設計有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.