linux下用python来压缩文件夹

简介:
   今天在一个论坛上看到一篇文章,是关于如何用python来做压缩的,我看了下,对于我这个python新手来说,还是很有学习的意义的,我当即拷贝到我的开发环境下,试验了下,果然可以, http://www.cnginx.com/read.php?tid=133&fpage=3  这个就是连接,试验成功后,想把这个程序移植到linux下,呵呵,原来的是在window下的。。。
     嘿嘿,在经过一番折腾后,终于让我弄出来了,嘿嘿,程序代码如下:
#!/usr/bin/python                                  #这是必须的
# write by world77                                 #这是广告
# Blog: world77.blog.51cto.com                     #这是广告
# QQ:384343423                                      #这是广告

import os
import zipfile
import time
filelist=[]
NeedToCompressDir=raw_input("Please input you want to compress's directory:")
#print NeedToCompressDir  #提示要求你输入需要压缩的文件夹路径

CompressedFileName=raw_input( "Please enter the Compressed file name:")
#print CompressFileName
  ##提示要求你输入压缩后保持的文件名

for root,dirs,files in os.walk(NeedToCompressDir):
        for name in files:
                filelist.append(os.path.join(root,name))
zf=zipfile.ZipFile(CompressedFileName,'w',zipfile.ZIP_DEFLATED)

print "Please wait,Compressing file..."        #提示信息
for i in filelist:
#       print "Compressing file,please wait..."
        zf.write(i)
        time.sleep(0.1)          #休眠0.1秒
zf.close()

time.sleep (1)                  #休眠1秒

print "Compressed file success!!!"
  
     嘿嘿,代码看过了,下面看看效果吧:
[root@localhost python]# ls
break.py             function_global.py  mymodule_demo.py  using_name.pyc
CompressFolder.py    function_key.py     mymodule.py       using_sys.py
continue.py          function_local.py   mymodule.pyc      using_tuple.py
DocString.py         function_param.py   test1.zip         var.py
expression.py        function_return.py  test3.zip         vbar.py
for.py               helloworld.py       test.zip          while.py
function1.py         if.py               using_list.py
function_default.py  mymodule_demo2.py   using_name.py

[root@localhost python]# pwd
/root/python

[root@localhost python]# python CompressFolder.py 
Please input you want to compress's directory:/root/python 
Please enter the Compressed file name:test2.zip
Please wait,Compressing file...
Compressed file success!!!
[root@localhost python]# ls
break.py             function_global.py  mymodule_demo.py  using_name.py
CompressFolder.py    function_key.py     mymodule.py       using_name.pyc
continue.py          function_local.py   mymodule.pyc      using_sys.py
DocString.py         function_param.py   test1.zip         using_tuple.py
expression.py        function_return.py  test2.zip         var.py
for.py               helloworld.py       test3.zip         vbar.py
function1.py         if.py               test.zip          while.py
function_default.py  mymodule_demo2.py   using_list.py
[root@localhost python]# 


 看,是否在当前路径下面多了压缩的文件,嘿嘿,有兴趣的话,赶紧去试试吧。。。
本文转自你是路人甲还是霍元甲博客51CTO博客,原文链接http://blog.51cto.com/world77/467555如需转载请自行联系原作者

world77

相关文章
|
8天前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。
|
2天前
|
存储 编解码 API
python多种方法压缩图片,opencv、PIL、tinypng、pngquant压缩图片
python多种方法压缩图片,opencv、PIL、tinypng、pngquant压缩图片
10 1
|
4天前
|
算法 数据挖掘 Python
|
6天前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
9天前
|
算法 Linux 数据安全/隐私保护
“Linux压缩大师”:gzip、bzip2、tar与zip
在Linux系统管理中,文件压缩与解压至关重要,能有效减少存储空间占用并加快文件传输。常用工具包括gzip、bzip2、tar和zip。gzip采用Lempel-Ziv算法,压缩率高且速度快,适用于单个文件压缩,扩展名为.gz。bzip2压缩率更高但速度稍慢,同样用于单个文件,扩展名为.bz2。tar主要用于打包文件而不直接压缩,常与gzip或bzip2结合使用实现压缩打包。zip则是一种通用压缩工具,支持多文件压缩及密码保护,兼容性好。这些工具让Linux环境下的文件管理更加高效便捷。
13 1
|
7天前
|
Linux Python
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
|
7天前
|
关系型数据库 Linux PostgreSQL
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
|
7天前
|
Linux C++ Docker
【Azure 应用服务】App Service for Linux 中实现 WebSocket 功能 (Python SocketIO)
【Azure 应用服务】App Service for Linux 中实现 WebSocket 功能 (Python SocketIO)
|
7天前
|
关系型数据库 MySQL Linux
【Azure 应用服务】[App Service For Linux(Function) ] Python ModuleNotFoundError: No module named 'MySQLdb'
【Azure 应用服务】[App Service For Linux(Function) ] Python ModuleNotFoundError: No module named 'MySQLdb'
|
10天前
|
Linux
在Linux中,如何创建、移动和删除文件和文件夹?
在Linux中,如何创建、移动和删除文件和文件夹?
下一篇
云函数