一、压缩
1. zip
“.zip”文件格式时Windows和Linux都通用的压缩文件类型,但一般这种型式压缩包在Linux上不常用。
zip [选项] 压缩包名(一般以.zip 标准格式结尾) 源文件或源目录
-r:递归压缩目录,即将指定目录下的文件即子目录全部压缩;
-m:将文件压缩后,删除原始文件;
-v:显示详细压缩过程,一般不单独使用;
-q:压缩时不显示命令执行过程;
-压缩级别(1-9):数字越大压缩效果越好;
-u:更新压缩文件,即在压缩文件中添加新文件。
[root@localhost mytest]# zip Today.zip Today
adding: Today/ (stored 0%)
[root@localhost mytest]# ls
ff first1 Today Today.zip
[root@localhost mytest]# zip -r t.zip Today
adding: Today/ (stored 0%)
adding: Today/too (deflated 92%)
adding: Today/too2 (stored 0%)
解压缩 uzip [选项] 压缩包名
-d:指定解压目录
-n:不覆盖已存在的文件
-o:解压时覆盖已经存在的文件,且无需用户确认
2. gzip
gzip只能用来压缩文件,不能压缩目录,即便指定了目录,也只能压缩目录中的文件
gzip [选项] 源文件
-r:递归压缩指定目录下的所有文件
-c:将压缩数据输出到标准输出,保留源文件
-d:解压
-number:指定压缩等级,-1最低,-9最高,默认-6
[root@localhost Today]# ls
too too2
[root@localhost Today]# gzip too
[root@localhost Today]# ll
总用量 8
-rw-r--r--. 1 root root 4 4月 12 20:35 too2
-rw-r--r--. 1 root root 38 4月 12 20:33 too.gz
[root@localhost mytest]# gzip Today #不能直接压缩目录
gzip: Today is a directory -- ignored
[root@localhost mytest]# gzip -r Today #递归压缩目录下的文件
[root@localhost mytest]# ls
ff first1 Today Today.zip t.zip #Today目录依然在
[root@localhost mytest]# ls Today/ #下面的文件全部压缩为gzip
too2.gz too.gz
gunzip,解压.gz的压缩文件
-r:递归解压
-c:将压缩内容输出到标准输出
-f:强制解压缩
-l:列出压缩文件内容
-v:显示命令执行过程
3. bzip2
bzip2同gzip类似,只能对文件进行压缩(或解压缩),对于目录只能压缩(解压缩)该目录及子目录下的所有文件。执行完命令后会生成一个以“.zip”后缀名的压缩包
bzip2 [选项] 源文件
-d:执行解压缩
-k:在解压或解压缩任务后会删除原始文件,保留原文件,就使用该选项
-f:强制覆盖
-t:测试文件完整性
-number:压缩比例,于gzip用法一样
[root@localhost Today]# ls
too too2
[root@localhost Today]# bzip2 *
[root@localhost Today]# ls
too2.bz2 too.bz2
[root@localhost Today]# bzip2 -d *
[root@localhost Today]# ls
too too2
[root@localhost Today]# bzip2 -k *
[root@localhost Today]# ls
too too2 too2.bz2 too.bz2
bunzip2:
bunzip2 [选项] 源文件
-k:保留压缩文件解压
-f:覆盖同名文件解压
-v:显示执行过程
-L:列出压缩文件内容
二、打包
打包即归档,目的是将多文件保存在一个单独磁带或磁盘中归档。解打包就是从归档文件中还原所需文件。
tar [选项] 源文件或目录
-c:将多个文件或目录进行打包
-A:追加文件到归档文件
-cvf 包名: 打包常用法,打包多个文件时只需空格分开
解打包:
tar [选项] 压缩包
-xvf:解压到当前目录
-C:指定目录
-tvf:不解包,只是显示包中文件
[root@localhost Today]# tar -cvf zong.tar * #打包当前目录下的文件
too
too2
too2.bz2
too.bz2
[root@localhost Today]# ls
too too2 too2.bz2 too.bz2 zong.tar
[root@localhost Today]# tar -xvf zong.tar -C ~/mytest/first1 #解打包到指定目录下
too
too2
too2.bz2
too.bz2
[root@localhost Today]# cd ~/mytest/first1/
[root@localhost first1]# ls #查看到解打包后的文件
boo1 file too too2.bz2 zhang zhang.tar.bz2
ff second too2 too.bz2 zhang.tar zhang.tar.gzip
5.打包压缩(解压打包压缩)
即打包并压缩为".tar.gz"或".tar.bz2 " 常用法:
tar -zcvf 打包压缩为".tar.gzip"文件
tar -jcvf 打包压缩为".tar.bz2"
解压缩:
tar -zxvf
tar -jxvf
[root@localhost mytest]# tar -jcvf T.tar.bz2 ./Today #打包压缩Today目录及下文件
./Today/
./Today/zong.tar
./Today/too
./Today/too2
./Today/too2.bz2
./Today/too.bz2
[root@localhost mytest]# tar -jxvf T.tar.bz2 -C ./SC/ #解包解压缩到指定目录下
./Today/
./Today/zong.tar
./Today/too
./Today/too2
./Today/too2.bz2
./Today/too.bz2
[root@localhost mytest]# cd SC
[root@localhost SC]# ls
Today