重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
主要针对单个文件压缩,而非目录
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、网页空间、营销软件、网站建设、北镇网站维护、网站推广。
此工具来自于ncompress包,此工具目前已经很少使用
对应的文件是 .Z 后缀
格式
常用选项
范例
zcat file.Z 不显式解压缩的前提下查看文本文件内容
范例
来自于 gzip 包
对应的文件是 .gz 后缀
格式
常用选项
范例
范例
来自于 bzip2 包
对应的文件是 .bz2 后缀
格式
常用选项
范例
来自于 xz 包
对应的文件是 .bz2 后缀
选项
范例
zip 可以实现打包目录和多个文件成一个文件并压缩,但可能会丢失文件属性信息,如:所有者和组信息,一般建议使用 tar 代替
分别来自于 zip 和 unzip 包
选项
范例
范例:交互式加密和解密
范例: 非交互式加密和解密
tar 即 Tape ARchive 磁带归档,可以对目录和多个文件打包一个文件,并且可以压缩,保留文件属性不丢失,常用于备份功能,推荐使用
对应的文件是 .tar 后缀
格式
选项
(1)创建归档,保留权限
(2)追加文件至归档:注:不支持对压缩文件追加
(3) 查看归档文件中的文件列表
(4) 展开归档
(5) 结合压缩工具实现:归档并压缩
范例
范例
范例
split 命令可以分割一个文件为多个文件
范例
将多个切割的小文件合并成一个大文件
cpio 是历史悠久的打包和解包工具,不过目前也已较少使用
cpio 命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件
格式
常用选项
范例
分析如下:
一、Linux下的tar命令详解
1、tar -c:建立压缩档案
2、tar -x:解压
3、tar -t:查看内容
4、tar -r:向压缩归档文件末尾追加文件
5、tar -u:更新原压缩包中的文件
二、压缩
1、tar -cvf jpg.tar *.jpg// 将目录里所有jpg文件打包成jpg.tar
2、tar -czf jpg.tar.gz *.jpg// 将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
3、tar -cjf jpg.tar.bz2 *.jpg// 将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
4、tar -cZf jpg.tar.Z *.jpg// 将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
5、rar a jpg.rar *.jpg// rar格式的压缩,需要先下载rar for linux
6、zip jpg.zip *.jpg// zip格式的压缩,需要先下载zip for linux
三、解压
1、tar -xvf file.tar// 解压 tar包
2、tar -xzvf file.tar.gz// 解压tar.gz
3、tar -xjvf file.tar.bz2// 解压 tar.bz2
4、tar -xZvf file.tar.Z// 解压tar.Z
5、unrar e file.rar// 解压rar
6、unzip file.zip// 解压zip
四、具体操作方法:
1、如图看到的示例,用tar命令来打包这些文件以及目录。(文件目录以自己实际情况为准,这里用做参考用例)
2、如图所示,tar -cvf便是打包,包名可以自己定(要加.tar后缀名),这是打包一个bd1.txt文件。
3、打包多个文件就是用空格隔开文件名,这样即可以此来打包多个txt文件。
4、可用星号*跟后缀名来匹配指定某一类文件,比如TXT类文件。
5、用Tar命令打包文件到指定的目录文件夹里面可以在包前面加文件夹的路径,例打包到a文件夹里边了。
tar -zcvf cm-11.tar.gz cm-11
//将cm-11文件夹压缩成cm-11.tar.gz
split -b 4000M -d -a 1 cm-11.tar.gz cm-11.tar.gz.
//使用split命令,-b 4000M 表示设置每个分割包的大小,单位还是可以k
// -d "参数指定生成的分割包后缀为数字的形式
//-a x来设定序列的长度(默认值是2),这里设定序列的长度为1
执行命令后,生成压缩包如下:
tar -zcvf cm-11.tar.gz cm-11 | split -b 4000M -d -a 1 - cm-11.tar.gz.
//采用管道,其中 - 参数表示将所创建的文件输出到标准输出上
tar -zxvf cm-11.tar.gz
cat cm-11.tar.gz.* | tar -zxv
tar可以用来压缩打包单文件、多个文件、单个目录、多个目录。
Linux打包命令 tar
tar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。
常用格式:
单个文件压缩打包 tar -czvf my.tar.gz file1
多个文件压缩打包 tar -czvf my.tar.gz file1 file2,...(file )(也可以给file 文件mv 目录在压缩)
单个目录压缩打包 tar -czvf my.tar.gz dir1
多个目录压缩打包 tar -czvf my.tar.gz dir1 dir2
解包至当前目录:tar -xzvf my.tar.gz
cpio
含子目录find x* | cpio -o /y/z.cpio
不含子目录ls x* | cpio -o /y/z.cpio
解包: cpio -i /y/z.cpio
[root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 ....
参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!
打包: 指将多个文件(或目录)合并成一个文件,方便在不同节点之间传递或在服务器集群上部署.
压缩或打包文件常见扩展名: *.tar, *.tar.gz, *.gz, *.bz2, *.Z;
Linux系统一般文件的扩展名用途不大,但是压缩或打包文件的扩展名是必须的.因为linux支持的压缩命令较多,不同的压缩技术使用的压缩算法区别较大,根据扩展名能够使用对应的解压算法.
将文件夹打包,也能将包解开成文件夹.
例1: 在/tmp文件夹下创建demo文件夹,将/etc目录拷贝到/tmp/demo目录里,然后打包压缩成gz格式,要求显示压缩详情。
1)在/tmp文件夹下创建demo文件夹,将/etc目录拷贝到/tmp/demo目录里.
注意: 拷贝非空目录要加 -r
2)将etc文件夹打包压缩成gz格式,并显示压缩详情.
tar -czvf 打包压缩后文件名 被打包压缩的文件夹
如果打包压缩成.bz2格式,那么tar命令的参数: -cjvf.
例2: 先删除etc目录,解压缩myetc.tar.gz到当前目录.
1)删除etc目录
2)解压缩myetc.tar.gz到当前目录
例3: 将myetc.tar.gz解压缩到指定目录/home
例4: 仅仅解压缩myetc.tar.gz里的某个目录,例如etc/udev
1)先删除etc目录
2)解压缩myetc.tar.gz到etc/udev目录