位置:海鸟网 > IT > linux/Unix >

Linux 下压缩与解压.zip和.rar及.7z文件

对于Window下的常见压缩文件.zip和.rar,Linux也有相应的方法来解压它们: 

1)对于.zip 

linux下提供了zip和unzip程序,zip是压缩程序,unzip是解压程序。它们的参数选项很多,可用命令zip -help和unzip -help查看,这里只做简单介绍,举例说明一下其用法: 

# zip yajiu.zip yajiu.jpg yajiu.png 
这条命令是将yajiu.jpg和yajiu.png压缩成一个zip包 
# zip yajiu.zip *.jpg 
这条命令是将所有.jpg的文件压缩成一个zip包 
# zip -r yajiu.zip yajiu 
这条命令是将文件夹yajiu压缩成一个zip包 
# unzip yajiu.zip 
这条命令是将yajiu.zip中的所有文件解压出来 

yajiu@yajiu-desktop:~$ cd 图片 
yajiu@yajiu-desktop:~/图片zip yajiu.zip yajiu.jpg yajiu.png 
updating: yajiu.jpg (deflated 34%) 
updating: yajiu.png (deflated 0%) 
yajiu@yajiu-desktop:~/图片$ zip yajiu.zip *.jpg 
adding: 1.jpg (deflated 34%) 
adding: 2.jpg (deflated 0%) 
yajiu@yajiu-desktop:~/图片$ zip -r yajiu.zip yajiu 
adding: yajiu/ (stored 0%) 
adding: yajiu/yajiu.zip (stored 0%) 
adding: yajiu/yajiu.jpg (deflated 34%) 
adding: yajiu/yajiu.rar (deflated 0%) 
adding: yajiu/yajiu.7z (deflated 0%) 
adding: yajiu/yajiu.png (deflated 0%) 
yajiu@yajiu-desktop:~/图片$ unzip yajiu.zip 
Archive: yajiu.zip 
replace 1.jpg? [y]es, [n]o, [A]ll, [N]one, [r]ename: y 
inflating: 1.jpg                  
replace 2.jpg? [y]es, [n]o, [A]ll, [N]one, [r]ename: y 
inflating: 2.jpg                  
yajiu@yajiu-desktop:~/图片$ 

原文链接: 

2)对于.rar 

安装: sudo apt-get install rar unrar 

或者可从下载 RAR for Linux 编译安装 
# tar -xzpvf rarlinux-3.8.0.tar.gz 
# cd rar 
# make 
这样就安装好了,安装之后就有了rar和unrar这两个程序,rar是压缩程序,unrar是解压程序。它们的参数选项很多,可用命令rar -help和unrar -help查看,这里亦简单举例说明一下其用法: 

# rar a yajiu.rar yajiu.jpg yajiu.png 
这条命令是将yajiu.jpg和yajiu.png压缩成一个rar包 
# rar a yajiu.rar *.jpg 
这条命令是将所有.jpg的文件压缩成一个rar包 
# rar a yajiu.rar yajiu 
这条命令是将文件夹yajiu压缩成一个rar包 
# unrar e yajiu.rar 
这条命令是将yajiu.rar中的所有文件解压出来 

yajiu@yajiu-desktop:~$ cd 图片 
yajiu@yajiu-desktop:~/图片$ rar a yajiu.rar yajiu.jpg yajiu.png 

RAR 3.80 beta 2   Copyright (c) 1993-2008 Alexander Roshal   16 Jun 2008 
Shareware version         Type RAR -? for help 

Evaluation copy. Please register. 

Creating archive yajiu.rar 

Adding    yajiu.jpg                                                   OK 
Adding    yajiu.png                                                   OK 
Done 
yajiu@yajiu-desktop:~/图片$ rar a yajiu.rar *.jpg 

RAR 3.80 beta 2   Copyright (c) 1993-2008 Alexander Roshal   16 Jun 2008 
Shareware version         Type RAR -? for help 

Evaluation copy. Please register. 

Creating archive yajiu.rar 

Adding    1.jpg                                                       OK 
Adding    2.jpg                                                       OK 
Done 
yajiu@yajiu-desktop:~/图片$ rar a yajiu.rar yajiu 

RAR 3.80 beta 2   Copyright (c) 1993-2008 Alexander Roshal   16 Jun 2008 
Shareware version         Type RAR -? for help 

Evaluation copy. Please register. 

Creating archive yajiu.rar 

Adding    yajiu/yajiu.zip                                             OK 
Adding    yajiu/yajiu.jpg                                             OK 
Adding    yajiu/yajiu.rar                                             OK 
Adding    yajiu/yajiu.7z                                              OK 
Adding    yajiu/yajiu.png                                             OK 
Adding    yajiu                                                       OK 
Done 
yajiu@yajiu-desktop:~/图片$ unrar e yajiu.rar 

UNRAR 3.80 beta 2 freeware      Copyright (c) 1993-2008 Alexander Roshal 


Extracting from yajiu.rar 


1.jpg already exists. Overwrite it ? 
[Y]es, [N]o, [A]ll, n[E]ver, [R]ename, [Q]uit Y 

Extracting 1.jpg                                                     OK 

7a008fc287fe680c0ff477e9.jpg already exists. Overwrite it ? 
[Y]es, [N]o, [A]ll, n[E]ver, [R]ename, [Q]uit Y 

Extracting 2.jpg                                                     OK 
All OK 
yajiu@yajiu-desktop:~/图片$ 

原文链接: 

2)对于.7z 

支持 7Z,ZIP,Zip64,CAB,RAR,ARJ,GZIP,BZIP2,TAR,CPIO,RPM,ISO,DEB 压缩文件格式 

安装: sudo apt-get install p7zip p7zip-full p7zip-rar 

# 7z a yajiu.7z yajiu.jpg yajiu.png 
这条命令是将yajiu.jpg和yajiu.png压缩成一个7z包 
# 7z a yajiu.7z *.jpg 
这条命令是将所有.jpg的文件压缩成一个7z包 
# 7z a yajiu.7z yajiu 
这条命令是将文件夹yajiu压缩成一个7z包 
# 7z e yajiu.7z 
这条命令是将yajiu.7z中的所有文件解压出来,e是解压到当前路径 
# 7z x yajiu.7z 
这条命令是将yajiu.7z中的所有文件解压出来,x是解压到压缩包命名的目录下 

yajiu@yajiu-desktop:~$ cd 图片 
yajiu@yajiu-desktop:~/图片$ 7z a yajiu.7z yajiu.jpg yajiu.png 

7-Zip (A) 4.58 beta Copyright (c) 1999-2008 Igor Pavlov 2008-05-05 
p7zip Version 4.58 (locale=zh_CN.UTF-8,Utf16=on,HugeFiles=on,2 CPUs) 
Scanning 

Creating archive yajiu.7z 

Compressing yajiu.jpg     
Compressing yajiu.png     

Everything is Ok 
yajiu@yajiu-desktop:~/图片$ 7z a yajiu.7z *.jpg 

7-Zip (A) 4.58 beta Copyright (c) 1999-2008 Igor Pavlov 2008-05-05 
p7zip Version 4.58 (locale=zh_CN.UTF-8,Utf16=on,HugeFiles=on,2 CPUs) 
Scanning 

Creating archive yajiu.7z 

Compressing 1.jpg     
Compressing 2.jpg     

Everything is Ok 
yajiu@yajiu-desktop:~/图片$ 7z a yajiu.7z yajiu 

7-Zip (A) 4.58 beta Copyright (c) 1999-2008 Igor Pavlov 2008-05-05 
p7zip Version 4.58 (locale=zh_CN.UTF-8,Utf16=on,HugeFiles=on,2 CPUs) 
Scanning 

Creating archive yajiu.7z 

Compressing yajiu/yajiu.7z     
Compressing yajiu/yajiu.rar     
Compressing yajiu/yajiu.zip     
Compressing yajiu/yajiu.jpg     
Compressing yajiu/yajiu.png     

Everything is Ok 
yajiu@yajiu-desktop:~/图片$ 7z x yajiu.7z 

7-Zip 4.58 beta Copyright (c) 1999-2008 Igor Pavlov 2008-05-05 
p7zip Version 4.58 (locale=zh_CN.UTF-8,Utf16=on,HugeFiles=on,2 CPUs) 

Processing archive: yajiu.7z 

file 1.jpg 
already exists. Overwrite with 
1.jpg? 
(Y)es / (N)o / (A)lways / (S)kip all / A(u)to rename / (Q)uit? Y 
Extracting 1.jpg 
file 2.jpg 
already exists. Overwrite with 
2.jpg? 
(Y)es / (N)o / (A)lways / (S)kip all / A(u)to rename / (Q)uit? Y 
Extracting 2.jpg 

Everything is Ok 

Files: 2 
Size:       112564 
Compressed: 96228 
yajiu@yajiu-desktop:~/图片$