#1 楼
如果系统上尚未安装unzip
命令,请运行:sudo apt-get install unzip
安装解压缩实用程序后,如果要提取到特定的目标文件夹,您可以使用:
unzip file.zip -d destination_folder
如果源目录和目标目录相同,则只需执行以下操作:
unzip file.zip
评论
如果您已经在目录中,则要解压缩文件,请省略第二个和第三个参数,即解压缩/path/to/file.zip
– Severo Raz
13年5月26日在19:13
我刚刚使用了此命令。这是一个例子。步骤1(我已更改为存储zip文件的目录):cd / home / paf / Copy / Programming / Javascript / Json步骤2(我将zip文件解压缩到刚才提到的目录中):unzip file.zip- d / home / paf /复制/编程/ Javascript / Json
–pablofiumara
13年11月12日在1:10
解压缩可能是默认程序。换句话说,您可能不需要安装它。
– noobninja
16年5月31日在19:33
@Aevi检查手册页[-d exdir]要将文件提取到的可选目录。
–肯利
17年1月11日在11:26
确保将其解压缩到一个目录,而不是tar存档,您可能会发现许多人的zip文件的根目录中包含数十个文件,这真是一团糟!
–史蒂夫
17年5月17日下午6:13
#2 楼
您只需使用unzip
即可。安装它:
apt-get install unzip
并使用它:
cd /path/to/file
unzip file.zip
#3 楼
一个更有用的工具是7z
,它可以压缩和解压缩一系列压缩格式,特别是lzma
,通常是提供最高压缩率的协议。此命令将安装
7z
:sudo apt-get install p7zip-full
此命令列出zip的内容:
7z l zipfile.zip
此命令提取zip的内容:
7z x zipfile.zip
评论
7z e不保留目录结构-7z x保留...
–叙利亚
13-10-23在12:59
13.10说7z不存在。我认为它必须sudo apt-get install 7zip
–nitishch
13-10-26在19:04
我认为install命令应该是sudo apt-get install p7zip或sudo apt-get install p7zip-full您需要完整版本才能获取7z命令。完整版也是处理zip和其他格式的两种格式中的唯一一种。
–Automatico
13-10-30在20:15
您能否澄清“更有用的工具”?您要比解压缩吗?您能否提供任何使7z更加有用的功能示例,以及在哪种情况下首选7z?
– David LeBauer
15年9月29日在22:17
对于某些解压缩更为有用:易于使用且易于记忆。
–user484419
16年1月20日在7:25
#4 楼
您可以使用:unzip file.zip -d somedir
提取到
yourpath/somedir
如果要提取到绝对路径,请使用
sudo unzip file.zip -d /somedir
#5 楼
使用脚本工具:Perl和Python这里有很多答案提到需要安装的工具,但是没有人提到Ubuntu的两种脚本语言Perl和Python已经附带了所有必需的模块,这些模块允许您执行以下操作:解压缩zip存档,这意味着您无需安装其他任何文件。只需使用下面介绍的两个脚本之一即可完成工作。它们相当短,如果我们愿意的话,甚至可以简化为单行命令。
Python
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
pzf = PyZipFile(zip_file)
pzf.extractall()
用法:
./pyunzip.py master.zip
或
python3 pyunzip.py master.zip
> Perl
#!/usr/bin/env perl
use Archive::Extract;
foreach my $filepath (@ARGV){
my $archive = Archive::Extract->new( archive => $filepath );
$archive->extract;
}
用法:
./perlunzip master.zip
或
perl perlunzip.pl master.zip
另请参阅
脚本以提取tar.gz档案。 br />如何为终端命令创建脚本文件?
评论
谢谢,正是我所需要的。我没有root用户,也不想从源代码手动安装unzip。这也可以与bash一线应用程序一起使用,它通常可以正常工作(假设文件名中没有'''):unzip(){python -c“ from zipfile import PyZipFile; PyZipFile('''$ 1''')) 。提取所有()”; }
– mxmlnkn
19年2月11日,9:50
仅使用ZipFile类,而不使用PyZipFile,后者具有压缩Python库的某些特定支持
–拉斐尔·克拉斯(RafałKłys)
1月21日11:15
#6 楼
如果源目录和目标目录相同,则只需执行以下操作:unzip filename.zip
评论
在Ubuntu 17.04上,-d require出于未知原因。
–水果
17年5月4日在7:14
#7 楼
我更喜欢bsdtar
而不是unzip
/ zip
。对于提取,它们非常相似:bsdtar -x -f /one/two/three/four.zip -C /five
unzip /one/two/three/four.zip -d /five
但是对于压缩,
bsdtar
胜出。假设您有以下输入:/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt
,并希望在zip文件中输入:
alfa/four.txt
bravo/four.txt
这是使用
bsdtar
很容易:bsdtar -a -c -f four.zip -C /one/two/three alfa bravo
zip没有像unzip这样的
-d
选项,因此除非您先使用cd
,否则您将无法实现以上要求。评论
尽管我想将胜利归功于foss工具,但在不加压力时,bsdtar显然与诸如Blóðstokkinn一词中的至少一个这样的特殊字符的预兆不高。压缩时我什至没有检查。真可惜:/解压后没有问题。
– Vrakfall
19年5月6日14:53
#8 楼
以下是我认为有用的选项的详细说明:Command: unzip -[option] zip-path. -d an optional directory to which to extract files -l List archive files. -P password Use password to decrypt encrypted zipfile entries (if any). -t Test archive files with cyclic redundancy check. -u Update the existing files. -z archive comment
评论
同时解压-o以覆盖
–路易斯·洛佩兹(Luis Lopez)
5月19日6:20
#9 楼
请遵循以下说明:http://www.codebind.com/linux-tutorials/unzip-zip-file-using-terminal-linux-ubuntu-linux-mint-debian/安装解压缩
因此,首先,如果未安装unzip,我们需要在系统上安装它。 unzip命令用于从
ZIP存档中提取文件。
运行以下命令以安装
unzip
sudo apt-get install unzip
unzip
语法$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile
现在请按照请执行以下步骤:
解压缩文件
选项1 –如果Zip文件位于终端所在的目录/文件夹中,并且我们要将其解压缩到当前的
工作目录中。 />使用以下命令可实现上述情况
sudo unzip zip_file_name.zip
如果zip文件受密码保护,则使用以下命令:
sudo ubzip -P zip_file_name.zip
请确保使用-P(大写字母P)而不是-p,因为这是不同的选项。
选项2 –如果该zip文件不在同一目录中,并且我们要提取/解压缩该文件,文件位于不同目录中。
使用以下命令实现上述情况
sudo unzip path/filename.zip -d another_path_or_same_path
如果不使用选项-d,则文件将被提取到当前工作目录中。
如果zip文件受密码保护,我们也可以使用
-P
。在Linux / Unix中使用tar命令
tar
是Tape Archive的首字母缩写。 tar命令用于在Linux / Unix中操作档案。系统管理员经常使用tar
命令将一堆文件或目录提取到高度压缩的存档中,在Linux / Unix系统中称为
tarball
或tar
,bzip
和gzip
。tar语法
tar [OPTION...] [FILE]...
或
tar必需标志
tar {-r|-t|-c|-x|-u}
tar {one of the required Flags} [ -d ][-B] [ -F ] [ -E ] [ -i ] [-h ] [ -l ] [ -m ] [ -o ] [ -p ] [ -w] [ -s ] [ -U ] [ -v ]
[-Number] [-b Blocks] [-f Archive]
示例
创建tar归档文件压缩目录或单个文件
下面的终端命令将创建一个名为
的
.tar
文件sample_dir.tar
带有目录/home/codebind/sample_dir
或当前工作目录中的sample_dir
。ripon@ripon:~$ tar -cvf sample_dir.tar sample_dir
sample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$ ls
sample_dir sample_dir.tar
这是这些标志(-cvf)的实际含义
-c, --create
–创建新档案-x, --extract, --get
–从档案中提取文件-f, --file ARCHIVE
–使用档案文件或设备ARCHIVE 通过压缩目录或单个文件来创建
tar.gz
或tgz
档案文件下面的终端命令将在当前工作目录中创建一个名为
.tar.gz
的sample_dir.tar.gz
文件,其目录为/home/codebind/sample_dir
或sample_dir
。请注意,我们在命令中添加了额外的标志-z。这是
标志-z实际上表示
-z, --gzip, --gunzip --ungzip
–使用gzip压缩档案ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dirsample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$ ls
sample_dir sample_dir.tar.gz
下面的命令将创建一个.tgz文件。要注意的一个是
tar.gz和tgz都相似。
ripon@ripon:~$ tar -cvzf sample_dir.tgz sample_dirsample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$ ls
sample_dir sample_dir.tgz
一次压缩多个目录或文件
说,例如,我们要压缩
sample_dir
目录,将
java_test
目录和abc.py
文件转换为名为sample_dir.tar.gz
的tar文件。运行以下命令以实现上述目标。
ripon@ripon:~$ tar -cvzf sample_dir.tar.gz sample_dir java_test abc.py
sample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
java_test/
java_test/HelloCV.java
abc.py
ripon@ripon:~$ ls
sample_dir java_test abc.py sample_dir.tar.gz
通过压缩目录或单个文件来创建
.bzip2
存档文件ripon@ripon:~$ tar -cjvf sample_dir.tar.bz2 sample_dir
sample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$
请注意,我们在命令中添加了额外的标志
-f
。这是标志
-f
的实际含义-f, --file ARCHIVE
–使用存档文件或设备ARCHIVE 提取
.tar
存档文件我们可以使用tar命令解压缩压缩文件。下面的
命令会将
sample_dir.tar
的内容提取到当前目录中。
ripon@ripon:~$ tar -xvf sample_dir.tar
sample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$
以下命令将提取或解压缩指定目录中的文件
目录,在这种情况下为
/home/codebind/dir_name
。ripon@ripon:~$ tar -xvf sample_dir.tar -C /home/codebind/dir_name
sample_dir/
sample_dir/main.cpp
sample_dir/sample.png
sample_dir/output
ripon@ripon:~$
我们在命令中添加了额外的标志
-C
。这是标志-C
实际上是什么意思-C, --directory DIR
–更改为目录DIR 评论
另外,要检查是否已安装zip / unzip,请使用zip -v和unzip -v。如果已安装,它将返回类似Debian的2009年4月20日的UnZip 6.00。由Info-ZIP原创。 (加上几行其他信息。如果未安装,它将显示类似当前未安装程序“ zip”的信息。您可以通过键入以下内容进行安装:apt install zip。
– SherylHohman
18年10月10日在14:34
链接断开。
–随机人
9小时前
评论
从当前文件夹中提取所有文件,您可以使用:解压\ *。zip@burtsevyg那里不需要反斜杠。它将使shell将\ *当作文字星号。只需使用* .zip解压缩使shell扩展*至所有以.zip结尾的文件
单独使用*对我不起作用。它导致文件名不匹配错误。 \ *完成了工作。
我建议您使用&学习“ unar”,而不要使用zip特定的版本,除非您需要特定的功能。 “支持的文件格式包括Zip,Tar-GZip,Tar-BZip2,RAR,7-zip,LhA,StuffIt以及许多其他古老而晦涩的格式。”。
Ubuntu已经安装了多个压缩/解压缩工具。从控制台运行apropos zip以获取完整列表。