linux 管理小命令3—— 压缩与解压缩上篇

简介: 1、compress 使用权限:所有使用者使用方式:compress [-dfvcV] [-b maxbits] [file ...]说明:compress是一个相当古老的unix档案压缩指令,压缩后的档案会加上一个.Z延伸档名以区别未压缩的档案,压缩后的档案可以以uncompress解压。

1、compress

使用权限:所有使用者
使用方式:compress [-dfvcV] [-b maxbits] [file ...]
说明:compress是一个相当古老的unix档案压缩指令,压缩后的档案会加上一个.Z延伸档名以区别未压缩的档案,压缩后的档案可以以uncompress解压。若要将数个档案压成一个压缩档,必须先将档案tar起来再压缩。由于gzip可以产生更理想的压缩比例,一般人多已改用gzip为档案压缩工具。 
参数: 
  c输出结果至标准输出设备(一般指荧幕) 
  f强迫写入档案,若目的档已经存在,则会被覆盖(force) 
  v将程序执行的讯息印在荧幕上(verbose) 
  b设定共同字串数的上限,以位元计算,可以设定的值为9至16 bits。由于值越大,能使用的共同字串就 越多,压缩比例就越大,所以一般使用预设值16 bits (bits) 
  d将压缩档解压缩 (与uncompress一样)
  V列出版本讯息 
范例: 
  将source.dat压缩成source.dat.Z,若source.dat.Z已经存在,内容则会被压缩档覆盖。 
          compress -f source.dat
  将source.dat压缩成source.dat.Z,并列印出压缩比例。-v与-f可以一起使用。
         compress -vf source.dat
    将压缩后的资料输出后再导入target.dat.Z可以改变压缩档名。 compress -c source.dat > target.dat.Z 
           -b的值越大,压缩比例就越大,范围是9-16,预设值是16。 compress -b 12 source.dat 
  将source.dat.Z解压成source.dat,若档案已经存在,使用者按y以确定覆盖档案,若使用-df程序则会自动覆盖档案。由于系统会自动加入.Z为延伸档名,所以source.dat会自动当作source.dat.Z处理。compress -d source.dat,compress -d source.dat.Z

2、gunzip(gzip)
功能说明:解压文件。
语  法:gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][文件...] 或 gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][目录]
补充说明:gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为".gz"。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。
参  数:
 -a或--ascii  使用ASCII文字模式。 
 -c或--stdout或--to-stdout  把解压后的文件输出到标准输出设备。 
 -f或-force  强行解开压缩文件,不理会文件名称或硬连接是否存在以及该文件是否为符号连接。 
 -h或--help  在线帮助。 
 -l或--list  列出压缩文件的相关信息。 
 -L或--license  显示版本与版权信息。 
 -n或--no-name  解压缩时,若压缩文件内含有远来的文件名称及时间戳记,则将其忽略不予处理。 
 -N或--name  解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上。 
 -q或--quiet  不显示警告信息。 
 -r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 
 -S<压缩字尾字符串>或--suffix<压缩字尾字符串>  更改压缩字尾字符串。 
 -t或--test  测试压缩文件是否正确无误。 
 -v或--verbose  显示指令执行过程。 
 -V或--version 显示版本信息。



3、tar

格式: tar [选项] [文件目录列表]
功能: 对文件目录进行打包备份
选项:
-c 建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
-O 将文件解开到标准输出
-v 处理过程中输出相关信息
-f 对普通文件操作
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

举例:
1.用tar打包一个目录下的文件:
tar -cvf /mnt/lgx/a1.doc
生成一个以.tar为扩展名的打包文件

2.用tar解开打包文件:
tar -xvf /mnt/lgx/a1.doc.tar


通常情况下,tar打包与gzip(压缩)经常联合使用。方法:首先用tar打包,如:
tar -cvf /mnt/lgx/a1.doc (产生a1.doc.tar文件)然后用gzip压缩a1.doc.tar文件,如:
gzip /mnt/lgx/a1.doc.tar (产生a1.doc.tar.gz文件)

3.解压a1.doc.tar.gz文件
方法1:
#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)
#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)
这两次命令也可使用管道功能,把两个命令合二为一:
#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf

方法2:使用tar提供的自动调用gzip解压缩功能
#tar -xzvf /mnt/lgx/a1.doc.tar.gz
经过tar打包后,也可用compress命令压缩(注:gzip比compress压缩更加有效),产生一个以.tar.Z的文件,在解包时,可先用 “uncompress 文件名”格式解压,然后用“tar -xvf 文件名”解包。也可直接调用“tar -Zxvf 文件名”解包。

需要注意的是,tar命令的格式,比如我们将目录/tmp/test/下的所有的文件(有很多目录和文件)都打包到/u01/testbak/目录下,其写法是:
#tar -czvf /u01/testbak/test.tar.gz /tmp/test       ——这个例句只是说明语法顺序,注意在实际应用中不要用绝对路径。

举例:
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt 
2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./
 
 

http://www.111cn.net/wy/156/linux-tar.htm

4、bzip2
备份压缩--bzip2
功能说明:.bz2文件的压缩程序。
语  法:bzip2 [-cdfhkLstvVz][--repetitive-best][--repetitive-fast][- 压缩等级][要压缩的文件]
补充说明:bzip2采用新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好。若没有加上任何参数,bzip2压缩完文件后会产生.bz2的压缩文件,并删除原始的文件。
参  数:
 -c或--stdout              将压缩与解压缩的结果送到标准输出。 
 -d或--decompress  执行解压缩。 
 -f或--force  bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,请使用此参数。 
 -h或--help  显示帮助。 
 -k或--keep  bzip2在压缩或解压缩后,会删除原始的文件。若要保留原始文件,请使用此参数。 
 -s或--small  降低程序执行时内存的使用量。 
 -t或--test     测试.bz2压缩文件的完整性。 
 -v或--verbose     压缩或解压缩文件时,显示详细的信息。 
 -z或--compress  强制执行压缩。 
 -L,--license,
 -V或--version      显示版本信息。 
 --repetitive-best 若文件中有重复出现的资料时,可利用此参数提高压缩效果。 
 --repetitive-fast  若文件中有重复出现的资料时,可利用此参数加快执行速度。 
 -压缩等级  压缩时的区块大小。
备份压缩--bunzip2
功能说明:.bz2文件的解压缩程序。
语  法:bunzip2 [-fkLsvV][.bz2压缩文件]
补充说明:bunzip2可解压缩.bz2格式的压缩文件。bunzip2实际上是bzip2的符号连接,执行bunzip2与bzip2 -d的效果相同。
参  数:
  -f或--force  解压缩时,若输出的文件与现有文件同名时,预设不会覆盖现有的文件。若要覆盖,请使用此参数。
  -k或--keep  在解压缩后,预设会删除原来的压缩文件。若要保留压缩文件,请使用此参数。
  -s或--small  降低程序执行时,内存的使用量。
  -v或--verbose  解压缩文件时,显示详细的信息。
  -l,--license,-V或--version  显示版本信息。
备份压缩--bzip2recover
功能说明:用来修复损坏的.bz2文件。
语  法:bzip2recover [.bz2 压缩文件]
补充说明:bzip2是以区块的方式来压缩文件,每个区块视为独立的单位。因此,当某一区块损坏时,便可利用bzip2recover,试着将文件中的区块隔开来,以便解压缩正常的区块。通常只适用在压缩文件很大的情况。
备份压缩--unarj
功能说明:解压缩.arj文件。
语  法:unarj [eltx][.arj压缩文件]
补充说明:unarj为.arj压缩文件的压缩程序。
参  数:
  e   解压缩.arj文件。
  l   显示压缩文件内所包含的文件。
  t   检查压缩文件是否正确。
  x   解压缩时保留原有的路径。



备份压缩--ar
功能说明:建立或修改备存文件,或是从备存文件中抽取文件。
语  法:ar[-dmpqrtx][cfosSuvV][a<成员文件>][b<成员文件>][i<成员文件>][备存文件][成员文件]
补充说明:ar可让您集合许多文件,成为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限。
参  数:
 指令参数 
 -d  删除备存文件中的成员文件。 
 -m  变更成员文件在备存文件中的次序。 
 -p  显示备存文件中的成员文件内容。 
 -q  将问家附加在备存文件末端。 
 -r  将文件插入备存文件中。 
 -t  显示备存文件中所包含的文件。 
 -x  自备存文件中取出成员文件。 
 选项参数 
 a<成员文件 将文件插入备存文件中指定的成员文件之后。 
 b<成员文件 将文件插入备存文件中指定的成员文件之前。 
  建立备存文件。 
  为避免过长的文件名不兼容于其他系统的ar指令指令,因此可利用此参数,截掉要放入备存文件中过长的成员文件名称。 
 i<成员文件 将问家插入备存文件中指定的成员文件之前。 
  保留备存文件中文件的日期。 
  若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表。 
  不产生符号表。 
  只将日期较新文件插入备存文件中。 
  程序执行时显示详细的信息。 
  显示版本信息。


相关文章
|
14天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
44 14
Linux 10 个“who”命令示例
|
3天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
57 20
|
4天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
26 7
|
23天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
31 9
|
22天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
28天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
112 3
|
1月前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
33 1
|
Shell Linux
12.13 Linux工作管理
工作管理指的是在单个登录终端(也就是登录的 Shell 界面)同时管理多个工作的行为。也就是说,我们登陆了一个终端,已经在执行一个操作,那么是否可以在不关闭当前操作的情况下执行其他操作呢?
142 0
12.13 Linux工作管理
|
Linux Shell Windows
Linux系统管理-工作管理(后台程序管理)
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/77857203 简介 工作管理指的是在当个登陆终端中同时管理多个工作的行为。
1177 0
下一篇
DataWorks