tar命令
tar是linux下经常使用的归档工具,是对文件或者目录进行打包归档,归成一个文件
格式:
tar [主选项+辅助选项] 文件或目录
主选项:
-c:创建新的文件
-r:把要归档的文件追加到档案文件的末尾
-t:列出档案文件中已经归档的文件列表
-x:从打包的档案文件中还原出文件
-u:更新档案文件,用新的文件替换档案中的原始文件
辅助选项:
-z:调用gzip命令在文件打包的过程中进行压缩或解压文件
-w:在还原文件时,把所有文件的修改时间设定为现在时间
-j:调用bzip2命令在文件打包的过程中进行压缩或解压文件
-Z:调用compress命令过滤档案
-f:"-f"选项后面紧跟档案文件的存储设备,默认是磁盘,需要指定档案文件名,如果是磁带,只需指定磁带设备名即可。
注意:在"-f"选项之后不能跟其它任何选项,也就是说"-f"必须是tar命令的最后一个选项
-v:指定在创建归档文件过程中,显示各个归档文件的名称
-p:在文件归档的过程中,保持文件的属性不发生变化
-N:"yyy/mm/dd"在指定日期之后的文件才会被打包到档案文件中
--exclude: file 在打包的过程中,不将指定file文件打包
tar实例跟实战
打包指定目录下的所有文件到指定的目录中
将当前目录中的date目录打包到date目录中,打包的路径和名字是由自己设置
一般会在名字后面加上.tar标识,方便识别
打包:
tar -cvf /root/date.tar date/
解包:
tar -xf date.tar
打包压缩指定目录下的所有文件到指定的目录中(.gz)
将当前目录中的date目录打包压缩到date目录中,打包压缩的路径和名字是由自己设置
一般会在名字后面加上.tar.gz标识,方便识别
-zcvf选项是代表打包完成后调用gzip命令进行压缩
压缩:
tar -zcvf /root/date.tar.gz /data/
解压:
tar -zxvf date.tar.gz
打包压缩指定目录下的所有文件到指定的目录中(.bz2)
将当前目录中的date目录打包压缩到date目录中,打包压缩的路径和名字是由自己设置
一般会在名字后面加上.tar.bz2标识,方便识别
-jcvf选项是代表打包完成后调用bzip2命令进行压缩
注意,如果压缩报错,正常是bzip2没有安装
压缩:
tar -jcvf /root/date.tar.bz2 /data/
解压:
tar -jxvf date.tar.bz2
查阅压缩包中的内容
查看.gz压缩包中的内容
tar -ztvf data.tar.gz
查看.bz2压缩包中的内容
tar -jtvf data.tar.bz2
打包的时候,保留文件的原权限
tar -zcvpf data.tar.gz /data/
解压指定压缩包中的文件
解压前要先查阅一下压缩包的内容。找到需要的文件,记录好所需要的文件的路径,在通过以下的命令就可以解压出所需的文件
tar -zxvf data.tar.gz data/1
压缩指定日期的文件
tar -N "2019/3/7" -zcvf d.tar.gz /data/
打包压缩目录下除了eso目录中的1文件,其它都打包压缩
--exclude选项只能去除文件,不能去除目录
tar --exclude /data/eso/1 -zcvf s.tar.gz /data/*
将data目录打包压缩后直接解压到当前目录中
不生成档案文件,就是不生成压缩文件
tar -zcvf - /data/ | tar -zxvf-
解压到指定的路径下
使用-C选项
tar -zxvf data.tar.gz -C /tmp/
============================================================================
============================================================================
============================================================================
gzip/gunzip命令
gzip/gunzip命令用于将一般文件进行压缩或解压的,压缩文件预设的扩展名为“.gz”
gunzip是gzip的硬链接,因此无论是压缩或者解压都可以通过gzip来实现
注意:gzip只能对文件压缩,不能压缩目录,即使指定压缩目录,也只会压缩目录内的所有文件
格式:
gzip [选项] [压缩/解压] [文件]
选项:
-d:对压缩的文件进行解压
-r:递归式压缩指定目录以及子目录下的所有文件
-t:检查压缩文件的完整性
-v:对于每个压缩和解压的文件,显示相应的文件名和压缩比
-l:显示压缩文件的压缩信息,显示字段为压缩文件大小,未压缩文件大小,压缩比和未压缩文件名称
-num:用指定的数字num配置压缩比,“-1”或“-fast” 表示最低压缩比,“-9”或“-best”表示最高压缩比,系统默认压缩比为6
实例
使用gzip压缩级别为9
先将jpress目录下的所有文件以及子目录进行压缩
然后在对压缩好的文件进行gzip压缩,设置gzip压缩级别为9
压缩
zip jpress.zip jpress/
再度压缩
gzip -9v jpress.zip
查看压缩文件的压缩信息
[root@localhost ~]# gzip -l jpress.zip.gz
compressed uncompressed ratio uncompressed_name
115 164 47.6% jpress.zip
解压文件到当前目录
使用gzip/gunzip解压
gzip -d jpress.zip.gz / gunzip jpress.zip.gz
解压后,还有一层,因为我们上面使用了zip压缩
unzip jpress.zip
============================================================================
============================================================================
============================================================================
bzip2/bunzip2命令
bzip2/bunzip2命令用于对文件进行压缩或解压,这命令类似于“gzip”命令
只能对文件进行压缩,对于目录只能压缩目录下的所有文件,压缩完成后,在目录下生成以“.bz2”的后缀压缩包
bunzip是bzip2的符号链接,即软链接,因此压缩解压都可以通过bzip2来实现
格式:
bzip2 [选项] [压缩/解压的文件]
选项:
-d:执行解压,此时选项后面要跟着解压的文件
-v:压缩或解压文件时,显示详细信息
-k:bzip2在压缩或解压后,会删除原始文件,若要保留原始文件,可使用这选项
-f:bzip2的压缩或解压时,若输出文件与现有的文件同名,默认不会覆盖现有文件,若要覆盖,可使用这选项
-t:测试“.bz2”压缩文件的完整性
压缩级别:压缩级别可以从1-9中选取,数字越大,压缩率越高
将jpress.zip压缩包进行压缩,设置压缩率为最高,同时在压缩完后不删除原始文件,显示压缩过程的详细信息
[root@localhost data]# bzip2 -9vk jpress.zip
jpress.zip: 1.086:1, 7.366 bits/byte, 7.93% saved, 164 in, 151 out.
转载请注明原文链接:linux-打包压缩命令,tar,gzip,bzip2
共有 0 条评论