Linux 打包压缩与解压解包
发布时间:2022-10-28 15:50:42 所属栏目:Linux 来源:
导读: 目录
打包: 将东西放在一起
压缩: 利用某种压缩算法,压缩它的存储空间。
作用: 同样大小的文件夹,打包压缩后传输更快linux 压缩,安全性更高。而同样的流量消耗,打包压缩可以传输
打包: 将东西放在一起
压缩: 利用某种压缩算法,压缩它的存储空间。
作用: 同样大小的文件夹,打包压缩后传输更快linux 压缩,安全性更高。而同样的流量消耗,打包压缩可以传输
|
目录 打包: 将东西放在一起 压缩: 利用某种压缩算法,压缩它的存储空间。 作用: 同样大小的文件夹,打包压缩后传输更快linux 压缩,安全性更高。而同样的流量消耗,打包压缩可以传输更多的数据。 总而言之,打包压缩就是为了传输数据更高效。 其实市面上的压缩文件的后缀非常多,对应着非常多的压缩算法。而这些也都有相应的解压算法。 Linux下,初期我们学习两种压缩/解压方式即可。 1. zip/unzip 2. tar zip / unzip zip -r compressedfile.zip directory zip指令 -r表示递归处理,将指定目录下的所有文件和子目录一并处理,目录需要,单文件不需要。 后跟打包压缩后新创建的压缩文件。打包压缩哪个目录 unzip compressedfile.zip 解压解包这个压缩文件,默认到当前目录下 unzip compressedfile.zip -d /xxx/aaa/bbb -d表示将压缩文件解压解包到指定目录下。 [yzl@VM-4-5-centos ~]$ ll total 4 drwxrwxr-x 6 yzl yzl 4096 Jul 18 11:51 directory [yzl@VM-4-5-centos ~]$ zip -r pack.zip ./directory adding: directory/ (stored 0%) adding: directory/no/ (stored 0%) adding: directory/no/newdir/ (stored 0%) adding: directory/noexist.txt (deflated 38%) adding: directory/vector/ (stored 0%) adding: directory/head5.txt (deflated 55%) adding: directory/666.txt (deflated 44%) adding: directory/a.out (deflated 73%) adding: directory/test/ (stored 0%) adding: directory/test/new1.txt (deflated 67%) adding: directory/test/hehe.txt (stored 0%) adding: directory/test/src (deflated 84%) adding: directory/test/file1.txt (deflated 57%) adding: directory/tmp.txt (deflated 38%) adding: directory/hello.c (deflated 2%) adding: directory/hello.txt (deflated 84%) adding: directory/directory/ (stored 0%) adding: directory/directory/666.txt (deflated 44%) adding: directory/directory/a.out (deflated 73%) adding: directory/ss (deflated 44%) adding: directory/newfile.c (deflated 84%) [yzl@VM-4-5-centos ~]$ ls directory pack.zip [yzl@VM-4-5-centos ~]$ rm -rf directory [yzl@VM-4-5-centos ~]$ ls pack.zip [yzl@VM-4-5-centos ~]$ pwd /home/yzl [yzl@VM-4-5-centos ~]$ unzip pack.zip -d ./../../home/yzl/ Archive: pack.zip creating: ./../../home/yzl/directory/ creating: ./../../home/yzl/directory/no/ creating: ./../../home/yzl/directory/no/newdir/ inflating: ./../../home/yzl/directory/noexist.txt creating: ./../../home/yzl/directory/vector/ inflating: ./../../home/yzl/directory/head5.txt inflating: ./../../home/yzl/directory/666.txt inflating: ./../../home/yzl/directory/a.out creating: ./../../home/yzl/directory/test/ inflating: ./../../home/yzl/directory/test/new1.txt extracting: ./../../home/yzl/directory/test/hehe.txt inflating: ./../../home/yzl/directory/test/src inflating: ./../../home/yzl/directory/test/file1.txt inflating: ./../../home/yzl/directory/tmp.txt inflating: ./../../home/yzl/directory/hello.c inflating: ./../../home/yzl/directory/hello.txt creating: ./../../home/yzl/directory/directory/ inflating: ./../../home/yzl/directory/directory/666.txt inflating: ./../../home/yzl/directory/directory/a.out inflating: ./../../home/yzl/directory/ss inflating: ./../../home/yzl/directory/newfile.c [yzl@VM-4-5-centos ~]$ ls directory pack.zip 一种不需要-r也可以压缩目录下所有文件的方法。使用了通配符而已。 [yzl@VM-4-5-centos ~]$ mkdir t [yzl@VM-4-5-centos ~]$ cd t [yzl@VM-4-5-centos t]$ touch aaa.txt [yzl@VM-4-5-centos t]$ touch bbb.txt [yzl@VM-4-5-centos t]$ ls aaa.txt bbb.txt [yzl@VM-4-5-centos t]$ cd .. [yzl@VM-4-5-centos ~]$ zip test.zip t/* adding: t/aaa.txt (stored 0%) adding: t/bbb.txt (stored 0%) [yzl@VM-4-5-centos ~]$ ls directory pack.zip t test.zip [yzl@VM-4-5-centos ~]$ rm -r t [yzl@VM-4-5-centos ~]$ unzip test.zip -d ./ Archive: test.zip extracting: ./t/aaa.txt extracting: ./t/bbb.txt [yzl@VM-4-5-centos ~]$ ls directory pack.zip t test.zip 其实打包,压缩是两个步骤,但是我们把他们合并了。 tar 第二套打包压缩、解压解包的工具命令 tar的指令比较多,但是目前我们只学习怎么完成工作即可。同样也把打包压缩的过程合并了。 tar -czvf compressedfile.tgz(.tar.gz) directory -c 建立一个压缩文件的参数指令 -z 一种压缩/解压算法,通用于压缩/解压的过程 -v 压缩过程中显示文件 -f 使用档名,表示后面的这个压缩后的文件名字,必须放在指令的最后,后跟压缩文件名 tar -czf compressedfile.tgz(.tar.gz) directory 不显示压缩过程中文件的打包压缩办法。 tar -xzvf compressedfile.tgz -x 解开一个压缩文件的参数指令,且显示解压解包过程中的文件。 tar -xzf compressedfile.tgz -C /home/yzl/ 同上,不显示解压解包过程中的文件,同样使用-z的解压算法。 -C表示解压解包到指定路径(unzip 是-d) [yzl@VM-4-5-centos ~]$ ls directory [yzl@VM-4-5-centos ~]$ tar -czf pack.zip directory [yzl@VM-4-5-centos ~]$ ls directory pack.zip [yzl@VM-4-5-centos ~]$ rm -rf directory [yzl@VM-4-5-centos ~]$ ls pack.zip [yzl@VM-4-5-centos ~]$ tar -xzvf pack.zip -C ./../../home/yzl/ directory/ directory/no/ directory/no/newdir/ directory/noexist.txt directory/vector/ directory/head5.txt directory/666.txt directory/a.out directory/test/ directory/test/new1.txt directory/test/hehe.txt directory/test/src directory/test/file1.txt directory/tmp.txt directory/hello.c directory/hello.txt directory/directory/ directory/directory/666.txt directory/directory/a.out directory/ss directory/newfile.c [yzl@VM-4-5-centos ~]$ ls directory pack.zip [yzl@VM-4-5-centos ~]$ tree directory directory |-- 666.txt |-- a.out |-- directory | |-- 666.txt | `-- a.out |-- head5.txt |-- hello.c |-- hello.txt |-- newfile.c |-- no | `-- newdir |-- noexist.txt |-- ss |-- test | |-- file1.txt | |-- hehe.txt | |-- new1.txt | `-- src |-- tmp.txt `-- vector 5 directories, 15 files (编辑:海洋资讯信息网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


