四周第五次课(3月2日)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四周第五次课(3月2日)相关的知识,希望对你有一定的参考价值。
6.5 zip压缩工具
6.6 tar打包
6.7 打包并压缩
6.5 zip压缩工具
zip压缩工具支持压缩目录。
开始zip之前做一下准备工作
首先将/tmp/aminglinux cp到/tmp/d6z下
# cd /tmp/d6z
# cp -r /tmp/aminglinux/ .
# tree aminglinux/
aminglinux/
├── 2
│ ├── 2.txt
│ └── 4.txt
└── aming2
├── 2
│ └── 2.txt
└── aming1
├── 2
│ └── 2.txt
└── aminglinux
└── 2
cp /d6z的4.txt到/aminglinux/2/,然后#du -sh 查看大小
# cp 4.txt aminglinux/2/
# du -sh aminglinux/
1.4M aminglinux/
zip压缩使用
用法 zip 压缩后的名称 需要压缩的文件或目录
压缩文件
# zip 2.txt.zip 2.txt
adding: 2.txt (deflated 74%)
zip压缩大小,取决于文件内容多余少。压缩率相对gzip,bzip2,xz来说比较中肯。
压缩目录加-r (此处因为还有文件,所以也添加上3.txt。)
# zip -r aming.zip 3.txt aminglinux/
adding: 3.txt (deflated 74%)
adding: aminglinux/ (stored 0%)
adding: aminglinux/2/ (stored 0%)
adding: aminglinux/2/2.txt (stored 0%)
adding: aminglinux/2/4.txt (deflated 74%)
adding: aminglinux/aming2/ (stored 0%)
adding: aminglinux/aming2/aming1/ (stored 0%)
adding: aminglinux/aming2/aming1/2/ (stored 0%)
adding: aminglinux/aming2/aming1/2/2.txt (stored 0%)
adding: aminglinux/aming2/aming1/aminglinux/ (stored 0%)
adding: aminglinux/aming2/aming1/aminglinux/2/ (stored 0%)
adding: aminglinux/aming2/aming1/aminglinux/2/2.txt (stored 0%)
adding: aminglinux/aming2/2/ (stored 0%)
adding: aminglinux/aming2/2/2.txt (stored 0%)
zip压缩不删除压缩前的文件
# du -sh aming.zip
748K aming.zip
解压缩:因为zip压缩没有把原文件删除,所以,解压当前位置时会有覆盖动作冲突,具体选项根据实际情况来操作。
# unzip aming.zip
Archive: aming.zip
replace 3.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
inflating: 3.txt
extracting: aminglinux/2/2.txt
inflating: aminglinux/2/4.txt
extracting: aminglinux/aming2/aming1/2/2.txt
extracting: aminglinux/aming2/aming1/aminglinux/2/2.txt
extracting: aminglinux/aming2/2/2.txt
指定解压位置 -d
# unzip 2.txt.zip -d test/
Archive: 2.txt.zip
inflating: test/2.txt
(unzip后面带zip压缩文件 -d 指定位置 test/代表/d6z/test/。一般当前目录下是用./test或者 test/表示)
压缩之前的文件名跟压缩之后的文件名是一样的,不能修改。
查看压缩包的文件列表。(看不到文件内容)
#unzip -l aming.zip
6.6 tar打包
介绍
tar打包工具
打包目的:打包后的文件传送会比较整齐和快捷。
例如要传送100M的文件,里面有几千个文件,直接传输的话会很费时间,但是如果打包后,传送会省时省时。
关于tar选项
-z 表示同时用gzip压缩
-j 表示同时用bzip2压缩
-J 表示同时用xz压缩
-x 表示解包或者解压缩
-t 表示查看tar包里的文件
-c 表示建立一个tar包或者压缩文件包
-v 表示可视化
-f 后面跟文件名(即-f filename ,注意:多个组合选项下 -f最好 放到最后)
--exclude filename 表示打包或者压缩时,过滤filename的文件或 目录,不打包filename。(排除,过滤用法)
将/aminglinux的文件和目录打包,并创建且命名为aminglinux.tar的tar打包文件(-v是可视化,可以看到进度)
# tar -cvf aminglinux.tar aminglinux/
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
如果重复已存在打包,不会提示任何信息,会直接覆盖且再打包。
解tar包
# tar -xvf aminglinux.tar
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
tar可以同时打包目录和文件
# tar -cvf aminglinux.tar aminglinux/ 3.txt 4.txt
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
3.txt
4.txt
--exclude 过滤用法
--exclude aming1
[[email protected] d6z]# tar -cvf aminglinux.tar --exclude aming1 aminglinux/ 3.txt 4.txt
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
3.txt
4.txt
--exclude aming1 --exclude 2.txt 多重过滤命令
[[email protected] d6z]# tar -cvf aminglinux.tar --exclude aming1 --exclude 2.txt aminglinux/ 3.txt 4.txt
aminglinux/
aminglinux/2/
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/2/
3.txt
4.txt
--exclude aming1 --exclude "*.txt" 多重过滤,支持*.txt过滤,注意加""
[[email protected] d6z]# tar -cvf aminglinux.tar --exclude aming1 --exclude "*.txt" aminglinux/ 3.txt 4.txt
aminglinux/
aminglinux/2/
aminglinux/aming2/
aminglinux/aming2/2/
6.7 打包并压缩
介绍
tar打包并压缩
gzip用法
[[email protected] d6z]# tar -czvf aminglinux.tar.gz aminglinux 3.txt
4.txt
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
3.txt
4.txt
[[email protected] d6z]# du -sh aminglinux.tar.gz
1.1M aminglinux.tar.gz
bz2用法
[[email protected] d6z]# tar -cjvf aminglinux.tar.bz2 aminglinux 3.txt
4.txt
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
3.txt
4.txt
[[email protected] d6z]# du -sh aminglinux.tar.bz2
408K aminglinux.tar.bz2
xz用法
[[email protected] d6z]# tar -cJvf aminglinux.tar.xz aminglinux 3.txt
4.txt
aminglinux/
aminglinux/2/
aminglinux/2/2.txt
aminglinux/2/4.txt
aminglinux/aming2/
aminglinux/aming2/aming1/
aminglinux/aming2/aming1/2/
aminglinux/aming2/aming1/2/2.txt
aminglinux/aming2/aming1/aminglinux/
aminglinux/aming2/aming1/aminglinux/2/
aminglinux/aming2/aming1/aminglinux/2/2.txt
aminglinux/aming2/2/
aminglinux/aming2/2/2.txt
3.txt
4.txt
[[email protected] d6z]# du -sh aminglinux.tar.xz
60K aminglinux.tar.xz
压缩得越狠,时间越慢。
解压缩 -c改成-x
例如# tar -zxvf aminglinux.tar.gz 解压aminglinux.tar.gz
查看文件列表 #tar -tf
#tar -tf aminglinux.tar.gz
以上是关于四周第五次课(3月2日)的主要内容,如果未能解决你的问题,请参考以下文章