Linux压缩命令
Linux常见的压缩格式有.zip、.gz、.bz2、.tar、.tar.gz、.tar.bz2;常用的压缩命令有zip、tar。这里列举了各压缩命令的使用示例。更多的用法请使用命令 --help查阅。
zip
格式:
zip [options] 目标压缩包名称 待压缩源文件
unzip [-Z] [options] 待压缩源文件 [list] [-x xlist] [-d exdir]
常用命令:
# 压缩文件
zip myfile.zip myfile
# 压缩文件夹(包含子目录)
zip -r mydir.zip mydir
# 压缩当前目录所有文件
zip mydir.zip *
# 解压文件
unzip mydir.zip
zip更多参数:
-v 显示操作详细信息
-d 从压缩包里删除文件
-m 将文件剪切到压缩包里,源文件将被删除
-r 递归压缩
-x 排除文件
-c 加一行备注
-z 加备注
-T 测试压缩包完整性
-e 加密
-q 安静模式
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率
--help 查看帮助
-h2 查看更多帮助
unzip更多参数:
-v 显示操作详细信息
-l 查看压缩包内容
-d 解压到指定文件夹
-x 排除压缩包内文件
-t 测试压缩包文件内容
-z 查看备注
-o 覆盖文件无需提示
-q 安静模式
--help 查看帮助
示例:
$ ls
t.md t.php t.php.zip
# 创建压缩包
$ zip -v myfile.zip t.*
adding: t.md (in=8121) (out=1051) (deflated 87%)
adding: t.php (in=740) (out=319) (deflated 57%)
adding: t.php.zip (in=1666) (out=1666) (stored 0%)
total bytes=10527, compressed=3036 -> 71% savings
# 测试压缩包完整性
$ zip -T myfile.zip
test of myfile.zip OK
# 测试压缩包文件内容
$ unzip -t myfile.zip
Archive: myfile.zip
testing: t.md OK
testing: t.php OK
testing: t.php.zip OK
No errors detected in compressed data of myfile.zip.
# 查看压缩包里内容
$ unzip -l myfile.zip
Archive: myfile.zip
Length Date Time Name
--------- ---------- ----- ----
8121 06-08-2016 17:03 t.md
740 06-08-2016 17:02 t.php
1666 07-30-2016 17:38 t.php.zip
--------- -------
10527 3 files
# 从压缩包里删除文件t.php.zip
$ zip -d myfile.zip t.php.zip
deleting: t.php.zip
# 从压缩包里删除文件t.php
$ zip -d myfile.zip t.php
deleting: t.php
# 添加文件到压缩包里
$ zip -u myfile.zip t.php
adding: t.php (deflated 57%)
# 给压缩包添加注释
$ zip -z myfile.zip
enter new zip file comment (end with .):
test
.
# 查看压缩包注释
$ unzip -z myfile.zip
Archive: myfile.zip
test
# 解压到指定文件夹
$ unzip myfile.zip -d my
Archive: myfile.zip
test .
inflating: my/t.md
inflating: my/t.php
# 排除文件不解压
$ unzip myfile.zip -x t.php -d my
Archive: myfile.zip
test .
inflating: my/t.md
gz
格式:
gzip [options] 待压缩源文件
gunzip [options] 待解压文件
不用写最终的压缩文件名,会自动在后面加.gz后缀,同时删除源文件。
常用命令:
# 压缩1.log,同时会自动删除源文件
gzip 1.log
# 解压1.log.gz,同时会自动删除压缩包
gzip -d 1.log.gz
# 压缩1.log,保留源文件
gzip -k 1.log
# 解压1.log.gz,保留压缩包
gzip -dk 1.log.gz
# 查看压缩包信息
gzip -l 1.log.gz
# 递归的对目录里的每个文件单独压缩
gzip -r mydir
注意:gunzip与gzip -d等效,都可以解压gz文件。
更多参数:
-c, --stdout 将压缩后的内容在标准输出显示出来,保留原文件
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率
示例:
# 压缩1.log为1.log.gz,保留源文件
gzip -c 1.log > 1.log.gz
bz2
格式:
bzip2 [options] 待压缩源文件
bunzip2 [options] 待解压文件
常用命令:
# 压缩1.log
bzip2 1.log
bzip2 -k 1.log
# 解压1.log.bz2
bzip2 -d 1.log.bz2
bzip2 -dk 1.log.bz2
bunzip2 1.log.bz2
bunzip2 -k 1.log.bz2
更多参数:
-c, --stdout 将压缩后的内容在标准输出显示出来,保留原文件
-1, --fast 更快的压缩速度
-9, --best 更好的压缩率
tar
格式:
tar [options] 目标压缩包名称 待压缩源文件
常用命令:
# 打包后,以gzip 压缩
tar zcvf test.tar.gz /test #压缩/test为test.tar.gz
# 解压test.tar.gz
tar zxvf test.tar.gz
# 打包后,以bzip2 压缩
tar jcvf test.tar.bz2 /test #压缩/test为test.tar.bz2
# 解压test.tar.bz2
tar jxvf test.tar.bz2
# 仅打包,不压缩
tar cvf test.tar /test #压缩/test为test.tar
# 解压test.tar
tar xvf test.tar
# 查看压缩包内容列表
tar tvf test.tar.gz
# 解压到指定文件夹(目标文件夹必须存在)
$ tar -zxvf all.tar.gz -C my/
# 压缩时排除某些目录
$ tar -zcvf tomcat.tar.gz --exclude=tomcat/logs tomcat
$ tar -zcvf tomcat.tar.gz --exclude=tomcat/logs --exclude=tomcat/libs --exclude=tomcat/xiaoshan.txt tomcat
常用参数说明:
-c, --create: 建立压缩档案
-x, --extract, --get:解压
-t, --list:查看内容
-r, --append:向压缩归档文件末尾追加文件
-u, --update:更新原压缩包中的文件
-d, --diff, --compare 将压缩包里的文件与文件系统进行对比
--delete 从压缩包里删除
这几个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的:
-z, --gzip, --gunzip, --ungzip:有gzip属性的
-j, --bzip2:有bz2属性的
-Z, --compress, --uncompress:有compress属性的
-v, --verbose:显示所有过程
-O, --to-stdout:将文件解开到标准输出
-C, --directory=DIR:解压到指定文件夹
最后的参数-f是必须的:
-f, --file=ARCHIVE: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
查看命令帮助:
tar --help
tar -?
tar --usage
更多示例:
# 比较压缩包里文件与源文件变动
$ tar --diff -vf 1.log.tar 1.log
1.log
1.log: Mod time differs
1.log: Size differs
# 删除压缩包里的1.log
$ tar --delete -vf 1.log.tar 1.log
# 向压缩归档文件里追加文件
$ tar rvf 1.log.tar 1.log 2.log
1.log
2.log
# 向压缩归档文件里更新文件
$ tar uvf 1.log.tar 1.log 2.log
说明:不能向tar.gz和tar.bz2里追加或者更新文件:
$ tar zrvf all.tar.gz 3.log
tar: Cannot update compressed archives
Try 'tar --help' or 'tar --usage' for more information.
参考:
http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html
Linux压缩命令的更多相关文章
- Linux压缩命令总结
2018-02-28 10:43:18 linux压缩和解压缩命令大全 tar命令:tar本身仅是一个打包的命令,不具有压缩的功能.打包后源文件仍然存在,具有将多个文件归档成一个文件的功能[root ...
- Linux压缩命令(zip/gz/bz2/tar/tar.gz/tar.bz2)
一.Linux的压缩格式 .zip . gz . bz2 .tar 1..zip格式(Linux和Windows是可以互传的) 压缩命令 语法:zip 文件名.zip 文件名 ------压缩 ...
- linux 压缩命令详解
原文地址:http://www.2cto.com/os/201112/114982.html 编写shell脚本的时候经常需要解压缩到指定的文件夹,tar命令是最常用的 参考一下说明,其中注意-C的用 ...
- linux 压缩命令
.zip格式压缩 zip 压缩文件名 源文件 压缩文件 zip -r 压缩文件名 源目录 #压缩目录 .zip格式解压缩 unzip 压缩文件 #解压缩 .gz格式压缩 gzip ...
- Linux —— 压缩命令
压缩与解压命令 .zip格式 压缩文件: zip 压缩文件名 原文件名 (压缩目录添加 -r) 解压缩文件/目录: unzip .zip压缩包 .gz格式 压缩文件: gzip 原文件名称 压缩文件为 ...
- linux 压缩命令 zip
1.zip命令 例如:zip -r mysql.zip mysql 该句命令的含义是:将mysql文件夹压缩成mysql.zip zip -r abcdef.zip abc def.txt 这句命令的 ...
- Linux下的压缩和解压缩命令——bzip2/bunzip2
bzip2命令 bzip2命令用于创建和管理(包括解压缩)".bz2"格式的压缩包. 我们遇见Linux压缩打包方法有很多种,以下讲解了Linux压缩打包方法中的Linux bzi ...
- Linux常用命令学习3---(文件的压缩和解压缩命令zip unzip tar、关机和重启命令shutdown reboot……)
1.压缩和解压缩命令 常用压缩格式:.zip..gz..bz2..tar.gz..tar.bz2..rar .zip格式压缩和解压缩命令 zip 压缩文件名 源文件:压缩文件 ...
- Linux常用命令--文件的压缩和解压缩
在Linux系统中,我们通常使用的文件压缩命令有:bunzip2 , bzip2 , cpio , gunzip , gzip ,split(切割文件) , zgrep(在压缩文件中寻找匹配的正则表达 ...
随机推荐
- 使用dom4j读取xml连接数据库与之单例模式
使用dom4j读取xml ,加入jar包 dom4j-1.6.1.jar jaxen-1.1-beta-6.jar public class XmlConfigReader { //懒汉式,延迟加载 ...
- HTML导航栏
先看效果(两种,1:自己写样式,写交互,2.用jQueryUI 的menu),如下图 第一种: 第二种: 第一种样式: 然后就开始准备了,单村用js和css也可以写出来,不过既然有jq ...
- ChannelHandler
ChannelHandler功能介绍 ChannelHandler类似于Servlet的Filter过滤器,负责对I/O事件或者I/O操作进行拦截和处理,它可以选择性地拦截和处理自己感兴趣的事件,也可 ...
- Myeclipse运行报错:an out of memory error has occurred的解决方法
不知道怎么了,重装的myeclipse2013,里边就放了一个项目,启动myeclipse就报 an out of memory error has occurred....... 一点yes就退出 ...
- WPF中获取鼠标相对于桌面位置
var transform = PresentationSource.FromVisual(this).CompositionTarget.TransformFromDevice; var mouse ...
- [资料分享]nutch视频教程
- yotaku的开发日志(1)
2015-12-18 21:17:46 连续看了几天的ThinkPHP框架,目前看到基于角色的用户访问权限控制. 相关代码如下: 数据库 用户表(管理员) mg_id mg_name mg_pwd m ...
- 弱省互测#0 t2
题意 给定两个字符串 A 和 B,求下面四个问题的答案: 1.在 A 的子串中,不是 B 的子串的字符串的数量. 2.在 A 的子串中,不是 B 的子序列的字符串的数量. 3.在 A 的子序列中,不是 ...
- bootstrap之google fonts
bootstrap之google fonts 在学习一个bootstrap时,看到了一行引用代码:@import url(http://fonts.googleapis.com/css?family= ...
- 【转】Android Studio-1.2版本设置教程
如果重新安装Android Studio的话要重新配置风格选项啥的,这篇是个很好的教程,原文链接:http://blog.csdn.net/skykingf/article/details/45485 ...