Linux备份压缩命令大全

1.ar命令


Linux ar命令用于建立或修改备存文件,或是从备存文件中抽取文件。


ar可让您集合许多文件,成为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限。


语法
ar[-dmpqrtx][cfosSuvV][a<成员文件>][b<成员文件>][i<成员文件>][备存文件][成员文件]


参数:


必要参数:
-d  删除备存文件中的成员文件。
-m  变更成员文件在备存文件中的次序。
-p  显示备存文件中的成员文件内容。
-q  将文件附加在备存文件末端。
-r  将文件插入备存文件中。
-t  显示备存文件中所包含的文件。
-x  自备存文件中取出成员文件。


选项参数:
a<成员文件>  将文件插入备存文件中指定的成员文件之后。
b<成员文件>  将文件插入备存文件中指定的成员文件之前。
c  建立备存文件。
f  为避免过长的文件名不兼容于其他系统的ar指令指令,因此可利用此参数,截掉要放入备存文件中过长的成员文件名称。
i<成员文件>  将问家插入备存文件中指定的成员文件之前。
o  保留备存文件中文件的日期。
s  若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表。
S  不产生符号表。
u  只将日期较新文件插入备存文件中。
v  程序执行时显示详细的信息。
V  显示版本信息。


实例


打包文件
[root@w3cschool.cc ~]# ls   //显示当前目录文件   
a.c    b.c d.c   install.log      qte
anaconda-ks.cfg c.c Desktop 


[root@w3cschool.cc ~]# ar rv one.bak a.c b.c //打包 a.c b.c文件 
ar: 正在创建 one.bak
a - a.c
a - b.c
[root@w3cschool.cc ~]# 


打包多个文件
[root@w3cschool.cc ~]# ar rv two.bak *.c  //打包以.c结尾的文件  
ar: 正在创建 two.bak
a - a.c
a - b.c
a - c.c
a - d.c
[root@w3cschool.cc ~]# 


显示打包文件的内容
[root@w3cschool.cc ~]# ar t two.bak    
a.c
b.c
c.c
d.c
[root@w3cschool.cc ~]# 


删除打包文件的成员文件
[root@w3cschool.cc ~]# ar d two.bak a.c b.c c.c  
[root@w3cschool.cc ~]# ar t two.bak       
d.c


2.bunzip2命令


Linux bunzip2命令是.bz2文件的解压缩程序。


bunzip2可解压缩.bz2格式的压缩文件。bunzip2实际上是bzip2的符号连接,执行bunzip2与bzip2 -d的效果相同。


语法:bunzip2 [-fkLsvV][.bz2压缩文件]


参数:
-f或--force  解压缩时,若输出的文件与现有文件同名时,预设不会覆盖现有的文件。若要覆盖,请使用此参数。
-k或--keep  在解压缩后,预设会删除原来的压缩文件。若要保留压缩文件,请使用此参数。
-s或--small  降低程序执行时,内存的使用量。
-v或--verbose  解压缩文件时,显示详细的信息。
-l,--license,-V或--version  显示版本信息。


实例


解压.bz2文件 
# bunzip2 -v temp.bz2 //解压文件显示详细处理信息


3.bzip2命令


Linux bzip2命令是.bz2文件的压缩程序。


bzip2采用新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好。若没有加上任何参数,bzip2压缩完文件后会产生.bz2的压缩文件,并删除原始的文件。


语法
bzip2 [-cdfhkLstvVz][--repetitive-best][--repetitive-fast][- 压缩等级][要压缩的文件]


参数:
-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  若文件中有重复出现的资料时,可利用此参数加快执行速度。
-压缩等级  压缩时的区块大小。


实例


解压.bz2文件 
[root@w3cschool.cc ~]# bzip2 -v temp.bz2 //解压文件显示详细处理信息 


压缩文件
[root@w3cschool.cc ~]# bzip2 -c a.c b.c c.c


检查文件完整性
[root@w3cschool.cc ~]# bzip2 -t temp.bz2


4.bzip2recover命令


Linux bzip2recover命令用来修复损坏的.bz2文件。


bzip2是以区块的方式来压缩文件,每个区块视为独立的单位。因此,当某一区块损坏时,便可利用bzip2recover,试着将文件中的区块隔开来,以便解压缩正常的区块。通常只适用在压缩文件很大的情况。


语法
bzip2recover [.bz2 压缩文件]


实例


修复.bz2文件 
# bzip2recover col.bz2 


5.gunzip命令


Linux gunzip命令用于解压文件。


gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为".gz"。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。


语法


参数:
gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][文件...] 或 gunzip [-acfhlLnNqrtvV][-s <压缩字尾字符串>][目录]
-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 显示版本信息。


实例
<p>解压文件
</p>
<pre>
# gunzip ab.gz 


6.unarj命令


Linux unarj命令用于解压缩.arj文件。


unarj为.arj压缩文件的压缩程序。


语法
unarj [eltx][.arj压缩文件]


参数:
e 解压缩.arj文件。
l 显示压缩文件内所包含的文件。
t 检查压缩文件是否正确。
x 解压缩时保留原有的路径。


实例


解压.arj文件 
# unarj e test.arj


7.compress命令


Linux compress命令是一个相当古老的 unix 档案压缩指令,压缩后的档案会加上一个 .Z 延伸档名以区别未压缩的档案,压缩后的档案可以以 uncompress 解压。若要将数个档案压成一个压缩档,必须先将档案 tar 起来再压缩。由于 gzip 可以产生更理想的压缩比例,一般人多已改用 gzip 为档案压缩工具。


语法
compress [-dfvcV] [-b maxbits] [file ...]


参数:
c 输出结果至标准输出设备(一般指荧幕)
f 强迫写入档案,若目的档已经存在,则会被覆盖 (force)
v 将程序执行的讯息印在荧幕上 (verbose)
b 设定共同字串数的上限,以位元计算,可以设定的值为 9 至 16 bits 。由于值越大,能使用的共同字串就 越多,压缩比例就越大,所以一般使用预设值 16 bits (bits)
d 将压缩档解压缩
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


压缩文件 
[root@w3cschool.cc ~]# compress abc.h
[root@w3cschool.cc ~]# ls


abc.h.Z


解压文件
[root@w3cschool.cc ~]# compress -d abc.h.Z
[root@w3cschool.cc ~]# ls


abc.h.


按指定压缩比例进行压缩
[root@w3cschool.cc ~]# compress -b 7 abc.h


强制压缩文件夹
[root@w3cschool.cc ~]# compress -rf /home/abc/ 


8.cpio命令


Linux cpio命令用于备份文件。


cpio是用来建立,还原备份档的工具程序,它可以加入,解开cpio或tra备份档内的文件。


语法
cpio [-0aABckLovV][-C <输入/输出大小>][-F <备份档>][-H <备份格式>][-O <备份档>][--block-size=<区块大小>][--force-local][--help][--quiet][--version] 或 cpio [-bBcdfikmnrsStuvV][-C <输入/输出大小>][-E <范本文件>][-F <备份档>][-H <备份格式>][-I <备份档>][-M <回传信息>][-R <拥有者><:/.><所属群组>][--block-size=<区块大小>][--force-local][--help][--no-absolute-filenames][--no-preserve-owner][--only-verify-crc][--quiet][--sparse][--version][范本样式...] 或 cpio [-0adkiLmpuvV][-R <拥有者><:/.><所属群组>][--help][--no-preserve-owner][--quiet][--sparse][--version][目的目]


参数:
-0或--null  接受新增列控制字符,通常配合find指令的"-print0"参数使用。
-a或--reset-access-time  重新设置文件的存取时间。
-A或--append  附加到已存在的备份档中,且这个备份档必须存放在磁盘上,而不能放置于磁带机里。
-b或--swap  此参数的效果和同时指定"-sS"参数相同。
-B  将输入/输出的区块大小改成5210 Bytes。
-c  使用旧ASCII备份格式。
-C<区块大小>或--io-size=<区块大小>  设置输入/输出的区块大小,单位是Byte。
-d或--make-directories  如有需要cpio会自行建立目录。
-E<范本文件>或--pattern-file=<范本文件>  指定范本文件,其内含有一个或多个范本样式,让cpio解开符合范本条件的文件,格式为每列一个范本样式。
-f或--nonmatching  让cpio解开所有不符合范本条件的文件。
-F<备份档>或--file=<备份档>  指定备份档的名称,用来取代标准输入或输出,也能借此通过网络使用另一台主机的保存设备存取备份档。
-H<备份格式>  指定备份时欲使用的文件格式。
-i或--extract  执行copy-in模式,还原备份档。
-l<备份档>  指定备份档的名称,用来取代标准输入,也能借此通过网络使用另一台主机的保存设备读取备份档。
-k  此参数将忽略不予处理,仅负责解决cpio不同版本间的兼容性问题。
-l或--link  以硬连接的方式取代复制文件,可在copy-pass模式下运用。
-L或--dereference  不建立符号连接,直接复制该连接所指向的原始文件。
-m或preserve-modification-time  不去更换文件的更改时间。
-M<回传信息>或--message=<回传信息>  设置更换保存媒体的信息。
-n或--numeric-uid-gid  使用"-tv"参数列出备份档的内容时,若再加上参数"-n",则会以用户识别码和群组识别码替代拥有者和群组名称列出文件清单。
-o或--create  执行copy-out模式,建立备份档。
-O<备份档>  指定备份档的名称,用来取代标准输出,也能借此通过网络 使用另一台主机的保存设备存放备份档。
-p或--pass-through  执行copy-pass模式,略过备份步骤,直接将文件复制到目的目录。
-r或--rename  当有文件名称需要更动时,采用互动模式。
-R<拥有者><:/.><所属群组>或
----owner<拥有者><:/.><所属群组>  在copy-in模式还原备份档,或copy-pass模式复制文件时,可指定这些备份,复制的文件的拥有者与所属群组。
-s或--swap-bytes  交换每对字节的内容。
-S或--swap-halfwords  交换每半个字节的内容。
-t或--list  将输入的内容呈现出来。
-u或--unconditional  置换所有文件,不论日期时间的新旧与否,皆不予询问而直接覆盖。
-v或--verbose  详细显示指令的执行过程。
-V或--dot  执行指令时,在每个文件的执行程序前面加上"."号
--block-size=<区块大小>  设置输入/输出的区块大小,假如设置数值为5,则区块大小为2500,若设置成10,则区块大小为5120,依次类推。
--force-local  强制将备份档存放在本地主机。
--help  在线帮助。
--no-absolute-filenames  使用相对路径建立文件名称。
--no-preserve-owner  不保留文件的拥有者,谁解开了备份档,那些文件就归谁所有。
-only-verify-crc  当备份档采用CRC备份格式时,可使用这项参数检查备份档内的每个文件是否正确无误。
--quiet  不显示复制了多少区块。
--sparse  倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。
--version  显示版本信息。


实例


制作备份文件
[root@w3cschool.cc var]# ll //显示当前目录下的文件
总用量 164
drwxr-xr-x  2 root  root  4096 2008-03-30 account
drwxr-xr-x  9 root  root  4096 2008-03-30 cache
drwxr-xr-x  3 netdump netdump 4096 2008-03-30 crash
drwxr-xr-x  3 root  root  4096 2008-03-30 db
drwxr-xr-x  3 root  root  4096 2008-03-30 empty
drwxr-xr-x  3 root  root  4096 2008-03-30 ftp
drwxrwx--T  2 root  gdm   4096 4月 9 20:17 gdm
drwxr-xr-x 25 root  root  4096 2008-03-30 lib
drwxr-xr-x  2 root  root  4096 2004-08-13 local
drwxrwxr-x  6 root  lock  4096 5月 8 15:25 lock
drwxr-xr-x 14 root  root  4096 5月 8 15:14 log
lrwxrwxrwx  1 root  root   10 2008-03-30 mail -> spool/mail
drwxr-xr-x  2 root  root  4096 2004-08-13 nis
drwxr-xr-x  2 root  root  4096 2004-08-13 opt
drwxr-xr-x  2 root  root  4096 2004-08-13 preserve
drwxr-xr-x 16 root  root  4096 5月 8 15:14 run
drwxr-xr-x 16 root  root  4096 2008-03-30 spool
drwxrwxrwt  3 root  root  4096 1月 13 18:53 tmp
drwx------  2 root  root  4096 2004-07-08 tux
drwxr-xr-x  8 root  root  4096 1月 19 19:39 www
drwxr-xr-x  3 root  root  4096 2008-03-30 yp
[root@w3cschool.cc var]# ls | cpio -o >123.cpio //制作备份文件
25 blocks
[root@w3cschool.cc var]# ll //显示当前目录下的文件
总用量 172
-rw-r--r--  1 root  root  1024 5月 24 13:06 123.cpio
drwxr-xr-x  2 root  root  4096 2008-03-30 account
drwxr-xr-x  9 root  root  4096 2008-03-30 cache
drwxr-xr-x  3 netdump netdump 4096 2008-03-30 crash
drwxr-xr-x  3 root  root  4096 2008-03-30 db
drwxr-xr-x  3 root  root  4096 2008-03-30 empty
drwxr-xr-x  3 root  root  4096 2008-03-30 ftp
drwxrwx--T  2 root  gdm   4096 4月 9 20:17 gdm
drwxr-xr-x 25 root  root  4096 2008-03-30 lib
drwxr-xr-x  2 root  root  4096 2004-08-13 local
drwxrwxr-x  6 root  lock  4096 5月 8 15:25 lock
drwxr-xr-x 14 root  root  4096 5月 8 15:14 log
lrwxrwxrwx  1 root  root   10 2008-03-30 mail -> spool/mail
drwxr-xr-x  2 root  root  4096 2004-08-13 nis
drwxr-xr-x  2 root  root  4096 2004-08-13 opt
drwxr-xr-x  2 root  root  4096 2004-08-13 preserve
drwxr-xr-x 16 root  root  4096 5月 8 15:14 run
drwxr-xr-x 16 root  root  4096 2008-03-30 spool
drwxrwxrwt  3 root  root  4096 1月 13 18:53 tmp
drwx------  2 root  root  4096 2004-07-08 tux
drwxr-xr-x  8 root  root  4096 1月 19 19:39 www
drwxr-xr-x  3 root  root  4096 2008-03-30 yp
[root@w3cschool.cc var]# 


解压备份文件 
[root@w3cschool.cc var]# ls | cpio -i -l 123.cpio


解压缩备份文件,并列出详细信息
[root@w3cschool.cc var]# cpio -t -I 123.cpio  
123.cpio
a.c
b.c
c.c
……省略部分结果


强制解压缩
[root@w3cschool.cc var]# cpio -i -u -I 123.cpio 


解压缩时进行反向匹配,指定不解压的文件
[root@w3cschool.cc var]# cpio -i -I 123.cpio -f *.c 


//不解压.c结尾的文件


向指定的.cpio文件添加文件
[root@w3cschool.cc var]# ls
123.cpio crash ftp local mail preserve tmp yp
account  db    gdm lock  nis  run       tux
cache     empty lib log  opt  spool   www
[root@w3cschool.cc var]# cpio -o -O 123.cpio -A
db  //用户输入 按下Ctrl+D结束输入
1 block
[root@w3cschool.cc var]# 


从标准输入备份文件
[root@w3cschool.cc test]# ls              
a. a.c b.c c.c d.c    f.c
[root@w3cschool.cc test]# cpio -o >123.cpio
a.c  //用户输入
b.c
c.c  //按下Ctrl+D完成输入
3 block
[root@w3cschool.cc test]# 


复制文件
[root@w3cschool.cc test]# cpio -p /root
a.c  //用户输入
b.c
c.c  //按下Ctrl+D完成输入
3 block


7.dump命令


Linux dump命令用于备份文件系统。


dump为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。


语法
dump [-cnu][-0123456789][-b <区块大小>][-B <区块数目>][-d <密度>][-f <设备名称>][-h <层级>][-s <磁带长度>][-T <日期>][目录或文件系统] 或 dump [-wW]


参数:
-0123456789  备份的层级。
-b<区块大小>  指定区块的大小,单位为KB。
-B<区块数目>  指定备份卷册的区块数目。
-c  修改备份磁带预设的密度与容量。
-d<密度>  设置磁带的密度。单位为BPI。
-f<设备名称>  指定备份设备。
-h<层级>  当备份层级等于或大于指定的层级时,将不备份用户标示为"nodump"的文件。
-n  当备份工作需要管理员介入时,向所有"operator"群组中的使用者发出通知。
-s<磁带长度>  备份磁带的长度,单位为英尺。
-T<日期>  指定开始备份的时间与日期。
-u  备份完毕后,在/etc/dumpdates中记录备份的文件系统,层级,日期与时间等。
-w  与-W类似,但仅显示需要备份的文件。
-W  显示需要备份的文件及其最后一次备份的层级,时间与日期。


实例


备份文件到磁带 
# dump -0 -u /dev/tape /home/


其中"-0"参数指定的是备份等级"-u"要求备份完毕之后将相应的信息存储到文件 /etc/dumpdates 留作记录 


8.uuencode命令


Linux uuencode命令用于将uuencode编码后的档案还原。


早期在许多 unix 系统的传送协定只能传送七位元字元,并不支援二进位档案,像中文文字档就有用到八位元,所以无法完整地送到另一架机器上。 uuencode 指令,可以将二进位档转换成七位元的档案,传送到另一架机器上再以 uudecode 还原。最常见的是用在以电子邮件传送二进位档。uuencode 编码后的资料都以 begin 开始,以 end 作为结束。


语法
 compress[必要参数][选择参数][目录或者文件]


参数说明:


必要参数:



 选择参数:
h 显示帮助信息
v 显示版本信息


实例


还原档案
# uuencode test.uud


9.gzexe命令


Linux gzexe命令用于压缩执行文件。


gzexe是用来压缩执行文件的程序。当您去执行被压缩过的执行文件时,该文件会自动解压然后继续执行,和使用一般的执行文件相同。


语法
gzexe [-d][执行文件...]


参数:
-d  解开压缩文件。


实例


压缩可执行文件
# gzexe abc 


10.gzip命令


Linux gzip命令用于压缩文件。


gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出".gz"的扩展名。


语法
gzip [-acdfhlLnNqrtvV][-S &lt;压缩字尾字符串&gt;][-&lt;压缩效率&gt;][--best/fast][文件...] 或 gzip [-acdfhlLnNqrtvV][-S &lt;压缩字尾字符串&gt;][-&lt;压缩效率&gt;][--best/fast][目录]


参数:
-a或--ascii  使用ASCII文字模式。
-c或--stdout或--to-stdout  把压缩后的文件输出到标准输出设备,不去更动原始文件。
-d或--decompress或----uncompress  解开压缩文件。
-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  显示版本信息。
-<压缩效率>  压缩效率是一个介于1-9的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。
--best  此参数的效果和指定"-9"参数相同。
--fast  此参数的效果和指定"-1"参数相同。


实例


压缩文件 
[root@w3cschool.cc a]# ls //显示当前目录文件
a.c b.h d.cpp
[root@w3cschool.cc a]# gzip * //压缩目录下的所有文件
[root@w3cschool.cc a]# ls //显示当前目录文件
a.c.gz    b.h.gz    d.cpp.gz
[root@w3cschool.cc a]# 


接范例1, 列出详细的信息 
[root@w3cschool.cc a]# gzip -dv * //解压文件,并列出详细信息
a.c.gz:     0.0% -- replaced with a.c
b.h.gz:     0.0% -- replaced with b.h
d.cpp.gz:     0.0% -- replaced with d.cpp
[root@w3cschool.cc a]# 


接范例1,显示压缩文件的信息 
[root@w3cschool.cc a]# gzip -l *
     compressed    uncompressed ratio uncompressed_name
         24          0  0.0% a.c
         24          0  0.0% b.h
         26          0  0.0% d.cpp


11.lha命令


Linux lha命令用于压缩或解压缩文件。


lha是从lharc演变而来的压缩程序,文件经它压缩后,会另外产生具有".lzh"扩展名的压缩文件。


语法
lha [-acdfglmnpqtuvx][-a <0/1/2>/u</0/1/2>][-<a/c/u>d][-<e/x>i][-<a/u>o][-<e/x>w=<目的目录>][-<a/u>z][压缩文件][文件...] 或 lha [-acdfglmnpqtuvx][-a <0/1/2>/u</0/1/2>][-<a/c/u>d][-<e/x>i][-<a/u>o][-<e/x>w=<目的目录>][-<a/u>z][压缩文件][目录...]


参数:
-a或a 压缩文件,并加入到压缩文件内。
-a<0/1/2>/u</0/1/2> 压缩文件时,采用不同的文件头。
-c或c 压缩文件,重新建构新的压缩文件后,再将其加入。
-d或d 从压缩文件内删除指定的文件。
-<a/c/u>d或<a/c/u>d 压缩文件,然后将其加入,重新建构,更新压缩文件或,删除原始文件,也就是把文件移到压缩文件中。
-e或e 解开压缩文件。
-f或f 强制执行lha命令,在解压时会直接覆盖已有的文件而不加以询问。
-g或g 使用通用的压缩格式,便于解决兼容性的问题。
-<e/x>i或<e/x>i 解开压缩文件时,忽略保存在压缩文件内的文件路径,直接将其解压后存放在现行目录下或是指定的目录中。
-l或l 列出压缩文件的相关信息。
-m或m 此参数的效果和同时指定"-ad"参数相同。
-n或n 不执行指令,仅列出实际执行会进行的动作。
-<a/u>o或<a/u>o 采用lharc兼容格式,将压缩后的文件加入,更新压缩文件。
-p或p 从压缩文件内输出到标准输出设备。
-q或q 不显示指令执行过程。
-t或t 检查备份文件内的每个文件是否正确无误。
-u或u 更换较新的文件到压缩文件内。
-u</0/1/2>或u</0/1/2> 在文件压缩时采用不同的文件头,然后更新到压缩文件内。
-v或v 详细列出压缩文件的相关信息。
-<e/x>w=<目的目录>或<e/x>w=<目的目录> 指定解压缩的目录。
-x或x 解开压缩文件。
-<a/u>z或<a/u>z 不压缩文件,直接把它加入,更新压缩文件。


实例


缩文件 
# lha -a abc.lhz a.b //压缩a.b文件,压缩后生成 abc.lhz文件


压缩目录
# lha -a abc2 /home/hnlinux


解压文件到当前目录 
# lha -xiw=agis abc  //解压文件abc


12.restore命令


Linux restore命令用来还原由dump操作所备份下来的文件或整个文件系统(一个分区)。


restore 指令所进行的操作和dump指令相反,dump操作可用来备份文件,而restore操作则是写回这些已备份的文件。


语法
restore [-cCvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>] 或 restore [-chimvy][-b <区块大小>][-f <备份文件>][-s <文件编号>] 或 restore [-crvy][-b <区块大小>][-f <备份文件>][-s <文件编号>] 或 restore [-cRvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>] 或 restore [chtvy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>][文件...] 或 restore [-chmvxy][-b <区块大小>][-D <文件系统>][-f <备份文件>][-s <文件编号>][文件...]


参数:
-b<区块大小> 设置区块大小,单位是Byte。
-c 不检查dump操作的备份格式,仅准许读取使用旧格式的备份文件。
-C 使用对比模式,将备份的文件与现行的文件相互对比。
-D<文件系统> 允许用户指定文件系统的名称。
-f<备份文件> 从指定的文件中读取备份数据,进行还原操作。
-h 仅解出目录而不包括与该目录相关的所有文件。
-i 使用互动模式,在进行还原操作时,restore指令将依序询问用户。
-m 解开符合指定的inode编号的文件或目录而非采用文件名称指定。
-r 进行还原操作。
-R 全面还原文件系统时,检查应从何处开始进行。
-s<文件编号> 当备份数据超过一卷磁带时,您可以指定备份文件的编号。
-t 指定文件名称,若该文件已存在备份文件中,则列出它们的名称。
-v 显示指令执行过程。
-x 设置文件名称,且从指定的存储媒体里读入它们,若该文件已存在在备份文件中,则将其还原到文件系统内。
-y 不询问任何问题,一律以同意回答并继续执行指令。


13.tar命令


Linux tar命令用于备份文件。


tar是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。


语法
tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b <区块数目>][-C <目的目录>][-f <备份文件>][-F <Script文件>][-K <文件>][-L <媒体容量>][-N <日期时间>][-T <范本文件>][-V <卷册名称>][-X <范本文件>][-<设备编号><存储密度>][--after-date=<日期时间>][--atime-preserve][--backuup=<备份方式>][--checkpoint][--concatenate][--confirmation][--delete][--exclude=<范本样式>][--force-local][--group=<群组名称>][--help][--ignore-failed-read][--new-volume-script=<Script文件>][--newer-mtime][--no-recursion][--null][--numeric-owner][--owner=<用户名称>][--posix][--erve][--preserve-order][--preserve-permissions][--record-size=<区块数目>][--recursive-unlink][--remove-files][--rsh-command=<执行指令>][--same-owner][--suffix=<备份字尾字符串>][--totals][--use-compress-program=<执行指令>][--version][--volno-file=<编号文件>][文件或目录...]


参数:
-A或--catenate 新增文件到已存在的备份文件。
-b<区块数目>或--blocking-factor=<区块数目> 设置每笔记录的区块数目,每个区块大小为12Bytes。
-B或--read-full-records 读取数据时重设区块大小。
-c或--create 建立新的备份文件。
-C<目的目录>或--directory=<目的目录> 切换到指定的目录。
-d或--diff或--compare 对比备份文件内和文件系统上的文件的差异。
-f<备份文件>或--file=<备份文件> 指定备份文件。
-F<Script文件>或--info-script=<Script文件> 每次更换磁带时,就执行指定的Script文件。
-g或--listed-incremental 处理GNU格式的大量备份。
-G或--incremental 处理旧的GNU格式的大量备份。
-h或--dereference 不建立符号连接,直接复制该连接所指向的原始文件。
-i或--ignore-zeros 忽略备份文件中的0 Byte区块,也就是EOF。
-k或--keep-old-files 解开备份文件时,不覆盖已有的文件。
-K<文件>或--starting-file=<文件> 从指定的文件开始还原。
-l或--one-file-system 复制的文件或目录存放的文件系统,必须与tar指令执行时所处的文件系统相同,否则不予复制。
-L<媒体容量>或-tape-length=<媒体容量> 设置存放每体的容量,单位以1024 Bytes计算。
-m或--modification-time 还原文件时,不变更文件的更改时间。
-M或--multi-volume 在建立,还原备份文件或列出其中的内容时,采用多卷册模式。
-N<日期格式>或--newer=<日期时间> 只将较指定日期更新的文件保存到备份文件里。
-o或--old-archive或--portability 将资料写入备份文件时使用V7格式。
-O或--stdout 把从备份文件里还原的文件输出到标准输出设备。
-p或--same-permissions 用原来的文件权限还原文件。
-P或--absolute-names 文件名使用绝对名称,不移除文件名称前的"/"号。
-r或--append 新增文件到已存在的备份文件的结尾部分。
-R或--block-number 列出每个信息在备份文件中的区块编号。
-s或--same-order 还原文件的顺序和备份文件内的存放顺序相同。
-S或--sparse 倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。
-t或--list 列出备份文件的内容。
-T<范本文件>或--files-from=<范本文件> 指定范本文件,其内含有一个或多个范本样式,让tar解开或建立符合设置条件的文件。
-u或--update 仅置换较备份文件内的文件更新的文件。
-U或--unlink-first 解开压缩文件还原文件之前,先解除文件的连接。
-v或--verbose 显示指令执行过程。
-V<卷册名称>或--label=<卷册名称> 建立使用指定的卷册名称的备份文件。
-w或--interactive 遭遇问题时先询问用户。
-W或--verify 写入备份文件后,确认文件正确无误。
-x或--extract或--get 从备份文件中还原文件。
-X<范本文件>或--exclude-from=<范本文件> 指定范本文件,其内含有一个或多个范本样式,让ar排除符合设置条件的文件。
-z或--gzip或--ungzip 通过gzip指令处理备份文件。
-Z或--compress或--uncompress 通过compress指令处理备份文件。
-<设备编号><存储密度> 设置备份用的外围设备编号及存放数据的密度。
--after-date=<日期时间> 此参数的效果和指定"-N"参数相同。
--atime-preserve 不变更文件的存取时间。
--backup=<备份方式>或--backup 移除文件前先进行备份。
--checkpoint 读取备份文件时列出目录名称。
--concatenate 此参数的效果和指定"-A"参数相同。
--confirmation 此参数的效果和指定"-w"参数相同。
--delete 从备份文件中删除指定的文件。
--exclude=<范本样式> 排除符合范本样式的问家。
--group=<群组名称> 把加入设备文件中的文件的所属群组设成指定的群组。
--help 在线帮助。
--ignore-failed-read 忽略数据读取错误,不中断程序的执行。
--new-volume-script=<Script文件> 此参数的效果和指定"-F"参数相同。
--newer-mtime 只保存更改过的文件。
--no-recursion 不做递归处理,也就是指定目录下的所有文件及子目录不予处理。
--null 从null设备读取文件名称。
--numeric-owner 以用户识别码及群组识别码取代用户名称和群组名称。
--owner=<用户名称> 把加入备份文件中的文件的拥有者设成指定的用户。
--posix 将数据写入备份文件时使用POSIX格式。
--preserve 此参数的效果和指定"-ps"参数相同。
--preserve-order 此参数的效果和指定"-A"参数相同。
--preserve-permissions 此参数的效果和指定"-p"参数相同。
--record-size=<区块数目> 此参数的效果和指定"-b"参数相同。
--recursive-unlink 解开压缩文件还原目录之前,先解除整个目录下所有文件的连接。
--remove-files 文件加入备份文件后,就将其删除。
--rsh-command=<执行指令> 设置要在远端主机上执行的指令,以取代rsh指令。
--same-owner 尝试以相同的文件拥有者还原问家你。
--suffix=<备份字尾字符串> 移除文件前先行备份。
--totals 备份文件建立后,列出文件大小。
--use-compress-program=<执行指令> 通过指定的指令处理备份文件。
--version 显示版本信息。
--volno-file=<编号文件> 使用指定文件内的编号取代预设的卷册编号。


实例


压缩文件 非打包
# touch a.c       
# tar -czvf test.tar.gz a.c   //压缩 a.c文件为test.tar.gz
a.c


列出压缩文件内容
# tar -tzvf test.tar.gz 
-rw-r--r-- root/root     0 2010-05-24 16:51:59 a.c


解压文件
# tar -xzvf test.tar.gz a.c 


14.uuencode命令


Linux uudecode 将 uuencode 编码后的档案还原, uudecode 只会将 begin 与 end 标记之间的编码资料还原,程序会跳过标记以外的资料。


语法
uuencode [-hv] [file1 ...]</p>


参数:
h 列出指令使用格式 (help)
v 列出版本讯息


实例


将 file.uud 还原,而还原后的档名储存在 file.uud 档中。
uuencode file.uud


可以一起还原好几个档案。
uuencode file1.uud file2.uud


15.unzip命令


Linux unzip命令用于解压缩zip文件


unzip为.zip压缩文件的解压缩程序。


语法
unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]


参数:
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
-f 更新现有的文件。
-l 显示压缩文件内所包含的文件。
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
-t 检查压缩文件是否正确。
-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 执行是时显示详细的信息。
-z 仅显示压缩文件的备注文字。
-a 对文本文件进行必要的字符转换。
-b 不要对文本文件进行字符转换。
-C 压缩文件中的文件名称区分大小写。
-j 不处理压缩文件中原有的目录路径。
-L 将压缩文件中的全部文件名改为小写。
-M 将输出结果送到more程序处理。
-n 解压缩时不要覆盖原有的文件。
-o 不必先询问用户,unzip执行后覆盖原有文件。
-P<密码> 使用zip的密码选项。
-q 执行时不显示任何信息。
-s 将文件名中的空白字符转换为底线字符。
-V 保留VMS的文件版本信息。
-X 解压缩时同时回存文件原来的UID/GID。
[.zip文件] 指定.zip压缩文件。
[文件] 指定要处理.zip压缩文件中的哪些文件。
-d<目录> 指定文件解压缩后所要存储的目录。
-x<文件> 指定不要处理.zip压缩文件中的哪些文件。
-Z unzip -Z等于执行zipinfo指令。


实例


查看压缩文件中包含的文件: 
# unzip -l abc.zip 
Archive: abc.zip
 Length   Date  Time  Name
--------  ----  ----  ----
  94618 05-21-10 20:44  a11.jpg
  202001 05-21-10 20:44  a22.jpg
    16 05-22-10 15:01  11.txt
  46468 05-23-10 10:30  w456.JPG
  140085 03-14-10 21:49  my.asp
--------          -------
  483188          5 files


-v 参数用于查看压缩文件目录信息,但是不解压该文件。 
# unzip -v abc.zip 
Archive: abc.zip
Length  Method  Size Ratio  Date  Time  CRC-32  Name
-------- ------ ------- -----  ----  ----  ------  ----
  94618 Defl:N  93353  1% 05-21-10 20:44 9e661437 a11.jpg
 202001 Defl:N  201833  0% 05-21-10 20:44 1da462eb a22.jpg
   16 Stored    16  0% 05-22-10 15:01 ae8a9910 ? +-|¥+-? (11).txt
  46468 Defl:N  39997 14% 05-23-10 10:30 962861f2 w456.JPG
 140085 Defl:N  36765 74% 03-14-10 21:49 836fcc3f my.asp
--------     ------- ---              -------
 483188      371964 23%              5 files


16.zip命令
 
Linux zip命令用于压缩文件。


zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有".zip"扩展名的压缩文件。


语法
zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]


参数:
-A 调整可执行的自动解压缩文件。
-b<工作目录> 指定暂时存放文件的目录。
-c 替每个被压缩的文件加上注释。
-d 从压缩文件内删除指定的文件。
-D 压缩文件内不建立目录名称。
-f 此参数的效果和指定"-u"参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
-F 尝试修复已损坏的压缩文件。
-g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h 在线帮助。
-i<范本样式> 只压缩符合条件的文件。
-j 只保存文件名称及其内容,而不存放任何目录名称。
-J 删除压缩文件前面不必要的数据。
-k 使用MS-DOS兼容格式的文件名称。
-l 压缩文件时,把LF字符置换成LF+CR字符。
-ll 压缩文件时,把LF+CR字符置换成LF字符。
-L 显示版权信息。
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-n<字尾字符串> 不压缩具有特定字尾字符串的文件。
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q 不显示指令执行过程。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-S 包含系统和隐藏文件。
-t<日期时间> 把压缩文件的日期设成指定的日期。
-T 检查备份文件内的每个文件是否正确无误。
-u 更换较新的文件到压缩文件内。
-v 显示指令执行过程或显示版本信息。
-V 保存VMS操作系统的文件属性。
-w 在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。
-x<范本样式> 压缩时排除符合条件的文件。
-X 不保存额外的文件属性。
-y 直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。
-z 替压缩文件加上注释。
-$ 保存第一个被压缩文件所在磁盘的卷册名称。
-<压缩效率> 压缩效率是一个介于1-9的数值。


实例


将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip: 
zip -q -r html.zip /home/html


如果在我们在 /home/html 目录下,可以执行以下命令: 
zip -q -r html.zip *


从压缩文件 cp.zip 中删除文件 a.c 
zip -dv cp.zip a.c


17.zipinfo命令


Linux zipinfo命令用于列出压缩文件信息。


执行zipinfo指令可得知zip压缩文件的详细信息。


语法
zipinfo [-12hlmMstTvz][压缩文件][文件...][-x <范本样式>]


参数:
-1 只列出文件名称。
-2 此参数的效果和指定"-1"参数类似,但可搭配"-h","-t"和"-z"参数使用。
-h 只列出压缩文件的文件名称。
-l 此参数的效果和指定"-m"参数类似,但会列出原始文件的大小而非每个文件的压缩率。
-m 此参数的效果和指定"-s"参数类似,但多会列出每个文件的压缩率。
-M 若信息内容超过一个画面,则采用类似more指令的方式列出信息。
-s 用类似执行"ls -l"指令的效果列出压缩文件内容。
-t 只列出压缩文件内所包含的文件数目,压缩前后的文件大小及压缩率。
-T 将压缩文件内每个文件的日期时间用年,月,日,时,分,秒的顺序列出。
-v 详细显示压缩文件内每一个文件的信息。
-x<范本样式> 不列出符合条件的文件的信息。
-z 如果压缩文件内含有注释,就将注释显示出来。


实例


显示压缩文件信息 
[root@w3cschool.cc a]# zipinfo cp.zip 
Archive: cp.zip  486 bytes  4 files
-rw-r--r-- 2.3 unx    0 bx stor 24-May-10 18:54 a.c
-rw-r--r-- 2.3 unx    0 bx stor 24-May-10 18:54 b.c
-rw-r--r-- 2.3 unx    0 bx stor 24-May-10 18:54 c.c
-rw-r--r-- 2.3 unx    0 bx stor 24-May-10 18:54 e.c
4 files, 0 bytes uncompressed, 0 bytes compressed: 0.0%
[root@w3cschool.cc a]# 


显示压缩文件中每个文件的信息 
[root@w3cschool.cc a]# zipinfo -v cp.zip 
Archive: cp.zip  486 bytes  4 files


End-of-central-directory record:
-------------------------------


 Actual offset of end-of-central-dir record:     464 (000001D0h)
 Expected offset of end-of-central-dir record:    464 (000001D0h)
 (based on the length of the central directory and its expected offset)


 This zipfile constitutes the sole disk of a single-part archive; its
 central directory contains 4 entries. The central directory is 248
 (000000F8h) bytes long, and its (expected) offset in bytes from the
 beginning of the zipfile is 216 (000000D8h).


 There is no zipfile comment.


Central directory entry #1:
---------------------------


 a.c


 offset of local header from start of archive:   0 (00000000h) bytes
 file system or operating system of origin:    Unix
 version of encoding software:           2.3
 minimum file system compatibility required:    MS-DOS, OS/2 or NT FAT
 minimum software version required to extract:   1.0
 compression method:                none (stored)
 file security status:               not encrypted
 extended local header:              no
 file last modified on (DOS date/time):      2010 May 24 18:54:26
 file last modified on (UT extra field modtime):  2010 May 24 18:54:26 local
 file last modified on (UT extra field modtime):  2010 May 24 10:54:26 UTC
 32-bit CRC value (hex):              00000000
 compressed size:                 0 bytes
 uncompressed size:                0 bytes
 length of filename:                3 characters
 length of extra field:              13 bytes
 length of file comment:              0 characters
 disk number on which file begins:         disk 1
 apparent file type:                binary
 Unix file attributes (100644 octal):       -rw-r--r--
 MS-DOS file attributes (00 hex):         none


 The central-directory extra field contains:
 - A subfield with ID 0x5455 (universal time) and 5 data bytes.
  The local extra field has UTC/GMT modification/access times.
 - A subfield with ID 0x7855 (Unix UID/GID) and 0 data bytes.


 There is no file comment.


Central directory entry #2:
---------------------------


 b.c


 offset of local header from start of archive:   54 (00000036h) bytes
 file system or operating system of origin:    Unix
 version of encoding software:           2.3
 minimum file system compatibility required:    MS-DOS, OS/2 or NT FAT
 minimum software version required to extract:   1.0
 compression method:                none (stored)
 file security status:               not encrypted
 extended local header:              no
 file last modified on (DOS date/time):      2010 May 24 18:54:26
 file last modified on (UT extra field modtime):  2010 May 24 18:54:26 local
 file last modified on (UT extra field modtime):  2010 May 24 10:54:26 UTC
 32-bit CRC value (hex):              00000000
 compressed size:                 0 bytes
 uncompressed size:                0 bytes
 length of filename:                3 characters
 length of extra field:              13 bytes
 length of file comment:              0 characters
 disk number on which file begins:         disk 1
 apparent file type:                binary
 Unix file attributes (100644 octal):       -rw-r--r--
 MS-DOS file attributes (00 hex):         none


 The central-directory extra field contains:
 - A subfield with ID 0x5455 (universal time) and 5 data bytes.
  The local extra field has UTC/GMT modification/access times.
 - A subfield with ID 0x7855 (Unix UID/GID) and 0 data bytes.


 There is no file comment.


Central directory entry #3:
---------------------------


 c.c


 offset of local header from start of archive:   108 (0000006Ch) bytes
 file system or operating system of origin:    Unix
 version of encoding software:           2.3
 minimum file system compatibility required:    MS-DOS, OS/2 or NT FAT
 minimum software version required to extract:   1.0
 compression method:                none (stored)
 file security status:               not encrypted
 extended local header:              no
 file last modified on (DOS date/time):      2010 May 24 18:54:26
 file last modified on (UT extra field modtime):  2010 May 24 18:54:26 local
 file last modified on (UT extra field modtime):  2010 May 24 10:54:26 UTC
 32-bit CRC value (hex):              00000000
 compressed size:                 0 bytes
 uncompressed size:                0 bytes
 length of filename:                3 characters
 length of extra field:              13 bytes
 length of file comment:              0 characters
 disk number on which file begins:         disk 1
 apparent file type:                binary
 Unix file attributes (100644 octal):       -rw-r--r--
 MS-DOS file attributes (00 hex):         none


 The central-directory extra field contains:
 - A subfield with ID 0x5455 (universal time) and 5 data bytes.
  The local extra field has UTC/GMT modification/access times.
 - A subfield with ID 0x7855 (Unix UID/GID) and 0 data bytes.


 There is no file comment.


Central directory entry #4:
---------------------------


 e.c


 offset of local header from start of archive:   162 (000000A2h) bytes
 file system or operating system of origin:    Unix
 version of encoding software:           2.3
 minimum file system compatibility required:    MS-DOS, OS/2 or NT FAT
 minimum software version required to extract:   1.0
 compression method:                none (stored)
 file security status:               not encrypted
 extended local header:              no
 file last modified on (DOS date/time):      2010 May 24 18:54:26
 file last modified on (UT extra field modtime):  2010 May 24 18:54:26 local
 file last modified on (UT extra field modtime):  2010 May 24 10:54:26 UTC
 32-bit CRC value (hex):              00000000
 compressed size:                 0 bytes
 uncompressed size:                0 bytes
 length of filename:                3 characters
 length of extra field:              13 bytes
 length of file comment:              0 characters
 disk number on which file begins:         disk 1
 apparent file type:                binary
 Unix file attributes (100644 octal):       -rw-r--r--
 MS-DOS file attributes (00 hex):         none


 The central-directory extra field contains:
 - A subfield with ID 0x5455 (universal time) and 5 data bytes.
  The local extra field has UTC/GMT modification/access times.
 - A subfield with ID 0x7855 (Unix UID/GID) and 0 data bytes.


 There is no file comment.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值