liunx文件操作 文件压缩
文件备份和压缩命令
在Linux中,常用的文件压缩工具有gzip,bzip2,zip。
'bzip2'是最理想的压缩工具,它提供了最大限度的压缩。
'zip'兼容好,windows也支持。
bzip2命令
bzip2 是一个压缩能力更强的压缩程序,.bz2结尾的文件就是bzip2压缩的结果。
要使用bzip2压缩文件,在shell提示下输入命令:
bzip2 filename
文件即会被压缩,并保存为filename.bz2
要解压文件,输入命令:
bunzip2 filename.bz2
filename.bz2 会被删除,而以filename代替
bzip2 filename.bz2 file1 file2 /usr/ssgao
上面的命令把file1,file2,file3 以及/usr/ssgao目录中的内容压缩至filename.bz2
gzip 命令
'gzip 源文件'
gzip filename 文件即会被压缩,并保存为filename.gz
要解压缩文件,输入命令:
'gunzip filename.gz'
filename.gz会被删除,而以filename代替
'gzip -r filename.gz file1 file2 /usr/work/school'
'-r' 表示压缩目录
上面的命令把file1,file2 以及/usr/work/school目录中的内容压缩起来放入 filename.gz
'gzip -r 目录'
压缩目录下的所有子文件,但不能压缩目录
zip 命令
Linux下提供了zip和unzip程序
'zip'为压缩程序
'zip 压缩文件名 源文件' #压缩文件
'zip -r 压缩文件名 源目录' #压缩目录
[root@ssgao1987 home]# zip home.zip /
'unzip'为解压程序
--------------------------------
'zip all.zip *.jpg'
该命令是将所有的.jpg的文件压缩成一个zip包
'unzip all.zip'
命令是将all.zip中的所有文件解压出来
tar命令
tar命令把大量的文件和目录打包成一个文件。
比如,gzip不能压缩目录,可以先使用tar命名把对应的文件打包成x.tar文件,然后使用gzip进行压缩。
'-c' 创建下一个新归档
'-f' 当与-c选项一起使用时,创建的tar文件使用该选项指定的文件名;当与-x选项一起使用的时候,则解除该选项指定的归档
'-t' 显示包括在tar文件中的文件列表
'-v' 显示文件的归档进度
'-x' 从归档中抽取文件
'-z' 使用gzip 压缩tar文件
'-j' 使用bzip2 压缩tar文件
'tar -cvf 打包文件名 源文件'
打包成x.tar文件
tar -zcvf 压缩包名.tar.gz 源文件
压缩为.tar.gz格式
tar -zxvf 压缩包名.tar.gz
解压缩x.tar.gz格式文件
指定解压缩位置
tar -zxvf jp.tar.gz -C /home/ssgao/
只查看压缩文件内容,不进行解压缩
tar -ztvf jp.tar.gz
ps: -f 使用档案名字,切记,这个参数是最后一个参数,后面只能是tar文件名
要创建一个tar文件,输入命令:
tar -cvf filename.tar usr/ssgao /home/mine
ps: 上面的命令将usr/ssgao 和 home/mime放入归档文件中。
列出tar文件的内容,输入命令:
tar -tvf filename2.tar
抽取tar文件的内容,输入命令:
tar -xvf filename.tar
ps:上面的命令不会删除tar文件,但会把解除归档的内容复制到当前文件工作目录并保留归档文件所使用的任何目录结构,请记住,tar默认不压缩文件。
要创建一个使用tar和bzip2来归档压缩的文件,使用-j选项:
tar -cjvf filename.tbz file
如果使用bunzip2命令解压filename.tbz文件,则filename.tbz会被删除,以filename.tar代替
要扩展并解除归档bzip.tar文件,输入命令:
tar -xjvf filename.tbz
要创建一个用tar和gzip归档并压缩的文件,使用-z选项:
tar -czxf filename.tgz file
ps: 如果使用gunzip命令解压filename.tgz文件,则filename.tgz会被删除
tar 的命令选项有很多(用man tar可以查看到),但常用的就那么几个选项,实例如下:
tar -cf all.tar *.jpg
ps ->将所有的.jpg文件打成一个名为all.tar的包。-c表示产生新的包,-f指定包的文件名
tar -rf all.tar *.gif
ps ->该命令是将所有的gif文件增加到all.tar的包里面去。-r表示增加文件的意思。
tar -uf all.tar logo.gif
ps ->该命令是更新原来tar包all.tar中的logo.gif文件,-u表示更新文件
tar -tf all.tar
ps ->该命令是列出all.tar包中的所有文件,-t表示列出文件的意思
tar -xf all.tar
ps ->该命令是解出all.tar包中的所有文件,-x表示解开的意思
tar 调用gzip
gzip是GUN组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip相对的解压程序是gunzip。
tar中使用-z这个参数来调用gzip。
tar -zczf all.tar.gz *.jpg
ps->该命令是将所有的.jpg文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包,包名:all.tar.gz
tar -zxzf all.tar.gz
ps->该命令用于解开上面压缩的包
tar 调用bzip2
tar中使用-j这个参数来调用gzip。
tar -cjf all.tar.bz2 *.jpg
ps-》这条命令是将所有的.jpg文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩过的包,包名为 all.tar.bz2
tar -xjf all.tar.bz2
ps-》该命令是将上面产生的包解开
tar 调用compress
compress也是一个压缩程序,但是好像使用compress的人不如gzip和bzip2的人多。.Z结尾的文件就是compress压缩的结果。
与compress相对的解压程序是uncompress。tar中使用-Z参数调用compress
tar -cZf all.tar.Z *.jpg
ps->将所有的.jpg文件打成一个tar包,并且将其用compress压缩,生成一个uncompress压缩过的包,包名为all.tar.Z
tar -xZf all.tar.Z
ps->该命令是将上面产生的包解开
tar命令总结
tar
-c 建立压缩档案
-x 解压
-t 查看内容
-r 向压缩归档文件末尾追加文件
-u 更新压缩包中的文件
上面五个参数是独立的,压缩/解压都要用到其中的一个,可以和别的命令连用,但只能用其中的一个
-z gzip属性
-j bz2属性
-Z compress属性
-v 显示所有过程
-O 将文件解开到标准输出
-----------------------------------------------------------------------------------
必不可少的参数
-f 使用档案名字,切记,这是最后一个参数,后面只能接档案名
tar -cvf jpg.tar *.jpg
将目录里所有的jpg文件打包成tar.jpg
tar -czf jpg.tar.gz *.jpg
将目录中的jpg文件打包成jpg.tar后,并用gzip压缩,生成一个gzip压缩过的包
tar -cjf jgp.tar.bz2 *.jpg
将目录中的jpg文件打包成jpg.tar后,并用bzip2压缩,生成一个bzip2压缩过的包
tar cZf jpg.tar.Z *.jpg
将目录中的jpg文件打包成jpg.tar后,并用compress压缩,生成一个compress压缩过的包
-----------------------------------------------------------------------------------
解压
tar -xvf file.tar 解压tar包
tar -xzvf file.tar.gz 解压tar.gz
tar -xjvf file.tar.bz2 解压tar.bz2
tar -xZvf file.tar.Z 解压tar.Z
-----------------------------------------------------------------------------------
*.tar 用 tar –xvf 解压
*.gz 用 gzip -d或者gunzip 解压
*.tar.gz和*.tgz 用 tar –xzf 解压
*.bz2 用 bzip2 -d或者用bunzip2 解压
*.tar.bz2用tar –xjf 解压
*.Z 用 uncompress 解压
*.tar.Z 用tar –xZf 解压
liunx文件操作 文件压缩的更多相关文章
- ASP.NET中的文件操作(文件信息,新建,移动,复制,重命名,上传,遍历)(亲测详细)
做了几天的文件操作,现在来总结一下,错误之处,还望指点!以文件为例,如果对文件夹操作,基本上将File换为Directory即可(例:FileInfo file = new FileInfo(Path ...
- 文件操作mode学习总结-----Python学习总结【第四篇】:Python之文件操作(文件、正则、json、pickle)
非常全的博客,防丢链接参考https://www.cnblogs.com/madsnotes/articles/5521551.html 1.文件操作 1.1 操作流程 1)文件打开 2)文件操作 3 ...
- python 文件操作: 文件操作的函数, 模式及常用操作.
1.文件操作的函数: open("文件名(路径)", mode = '模式', encoding = "字符集") 2.模式: r , w , a , r+ , ...
- liunx文件操作 文件查看
文件的阅读命令 head 命令 head命令可以用来查看文件的开头部分,命令的格式是: head 文件名 默认设置,它只查看文件的前10行.但可以通过指定一个数字选项来改变要显示的行数,命令如下 he ...
- Python文件操作-文件的增删改查
需求:对文件进行增删改查 由于时间原因,本次代码没有增加任何注释,如有疑问,请联系编辑者:闫龙 其实我也是醉了,看着这些个代码,我脑袋也特么大了,没办法,大神说了,不让用新知识,只可以使用学过的,所以 ...
- java文件操作文件之csv
直接上代码: @Test public void dowrite(){ String filePath = "D://test.csv"; try { File f = new F ...
- C# 文件操作笔记
C#中的文件操作 文件操作中的常见类: 静态类 File类:提供很多静态方法,用于移动.复制和删除文件. Directory类:用于移动.复制和删除目录. Path类:用于处理与路径相关的操作. 实例 ...
- Python【第三篇】文件操作、字符编码
一.文件操作 文件操作分为三个步骤:文件打开.操作文件.关闭文件,但是,我们可以用with来管理文件操作,这样就不需要手动来关闭文件. 实现原理: import contextlib @context ...
- Python开发【第三篇】:Python基本之文件操作
Python基本之文本操作 一.初识文本的基本操作 在python中打开文件有两种方式,即:open(...) 和 file(...) ,本质上前者在内部会调用后者来进行文件操作,推荐使用 open ...
随机推荐
- Session实现原理分析
http://www.jb51.net/article/77726.htm PHP第一次会话时会有Set-Cookie响应头返回,设置上PHPSESSID cookie Cache-Control: ...
- python头部 #!/usr/bin/env python
*.py运行: python *.py OR ./*.py 对于*.py其首行应标明 #!/usr/bin/env python,定义python解释器调用路径,对比#!/usr/bin/python ...
- 面试(I)
即时通讯 为什么要TCP连接建立3次? 假设是2次: 假如在第1次客户端向服务器端发送请求因为阻塞,客户端会再次给服务器端发送请求,这次服务器端和客户端建立了连接.这样双方就可以发送数据了,发送完以后 ...
- js不需要知道图片宽高的懒加载方法(经过实际测试,不加宽高仍然是无法正常加载的,设置height:auto,height:100%,仍然显示高度为0)
js不需要知道图片宽高的懒加载方法 懒加载是如何实现的? - 简书https://www.jianshu.com/p/e86c61468285找到一个不需要知道图片宽高的懒加载方法了(经过实际测试,不 ...
- java-面向对象的多态性摘要
多态的作用就是用来将接口和实现分离开,改善代码组织结构,增强代码可读性,便于代码的维护. 在java中,讨论多态就是讨论方法调用的绑定,绑定就是将一个方法调用同一个方法主体联系起来.在java中通常叫 ...
- 『Numpy』np.meshgrid
生成网格坐标,一个很好的说明图如下: 虽然xy双坐标比较常用,但实际上其输入可以是任意多的数组,输出数组数目等于输出数组数目,且彼此间shape一致. 如果输入数组不是一维的,会拉伸为1维进行计算. ...
- Python类的私有属性
class Bar(object): __age = 18 sex = 'male' def __init__(self, ): pass def f(self): print(self.__age) ...
- Vue基础进阶 之 自定义指令
自定义指令-----钩子函数 自定义指令 除了内置指令,Vue也允许用户自定义指令: 注册指令:通过全局API Vue.directive可以注册自定义指令: 自定义指令的钩子函数: bind: in ...
- C++如何在r3静态调用NT函数
原文最早发表于百度空间2010-02-22. 1.把ntapi.h.ntdll.lib放在一个目录,然后设置工具——选项——项目和解决方案——VC++目录——包含文件,把刚刚的目录设置在改包 含文件中 ...
- 【题解】Luogu P3931 SAC E#1 - 一道难题 Tree
原题传送门 题目几乎告诉你要用最大流 先进行搜索,将树的叶子节点都连到一个虚拟点T上,流量为inf(这样不会干扰到前面部分的最大流) 其他边按树的形态连边,以根节点为S,跑一变最大流即可求出答案 #i ...