python壓縮文件夾到指定位置


 

壓縮/root/mongo文件夾到/tmp目錄下,壓縮包名字為archive.zip, 在mongo目錄下只有一個1.txt文件

import zipfile
import os


f = zipfile.ZipFile('/tmp/archive.zip','w',zipfile.ZIP_DEFLATED)
dirpath = "/root/mongo"
for path, dirnames, filenames in os.walk(dirpath):
    # 去掉目標根路徑,只對目標文件夾下邊的文件及文件夾進行壓縮
    fpath= path.replace(dirpath,'') 
    for filename in filenames:
        f.write(os.path.join(path, filename), os.path.join(fpath, filename))
    f.close()

 

說明:f.write()將需要壓縮的文件 寫入剛創建的zip對象f中   

os.path.join(path, filename)   的值為/root/mongo/1.txt   第一個參數表示要把哪個文件存到壓縮包中

os.path.join(fpath, filename)的值為1.txt   第二個參數表示壓縮文件存的文件層級,加上這個參數解壓后為1.txt文件;如果不寫這個參數,解壓后是一個文件夾root

 

os.walk詳解:https://zhuanlan.zhihu.com/p/149824829

 

 

參考

https://blog.csdn.net/qq_28827635/article/details/92999111

https://www.cnblogs.com/yhleng/p/9407946.html

https://www.cnblogs.com/hellojesson/p/9293952.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM