Kel*_*ley 2462
如果unzip
您的系统上尚未安装该命令,请运行:
sudo apt-get install unzip
Run Code Online (Sandbox Code Playgroud)
安装解压缩实用程序后,如果要解压缩到特定目标文件夹,可以使用:
unzip file.zip -d destination_folder
Run Code Online (Sandbox Code Playgroud)
如果源目录和目标目录相同,您可以简单地执行以下操作:
unzip file.zip
Run Code Online (Sandbox Code Playgroud)
Pan*_*her 264
您可以简单地使用unzip
.
安装它:
apt-get install unzip
Run Code Online (Sandbox Code Playgroud)
并使用它:
cd /path/to/file
unzip file.zip
Run Code Online (Sandbox Code Playgroud)
小智 146
一个更有用的工具是7z
,它可以压缩和解压缩一系列压缩格式,特别是lzma
通常提供最高压缩率的协议。
此命令安装7z
:
sudo apt-get install p7zip-full
Run Code Online (Sandbox Code Playgroud)
此命令列出 zip 的内容:
7z l zipfile.zip
Run Code Online (Sandbox Code Playgroud)
此命令提取 zip 的内容:
7z x zipfile.zip
Run Code Online (Sandbox Code Playgroud)
小智 59
您可以使用:
unzip file.zip -d somedir
Run Code Online (Sandbox Code Playgroud)
提取到 yourpath/somedir
如果要提取到绝对路径,请使用
sudo unzip file.zip -d /somedir
Run Code Online (Sandbox Code Playgroud)
Ser*_*nyy 58
这里的许多答案都提到需要安装的工具,但没有人提到 Ubuntu 的两种脚本语言 Perl 和 Python 已经附带了所有必要的模块,允许您解压缩 zip 存档,这意味着您不需要安装任何东西别的。只需使用下面提供的两个脚本中的一个来完成这项工作。它们相当短,如果我们愿意,甚至可以浓缩为一行命令。
#!/usr/bin/env python3
import sys
from zipfile import PyZipFile
for zip_file in sys.argv[1:]:
pzf = PyZipFile(zip_file)
pzf.extractall()
Run Code Online (Sandbox Code Playgroud)
用法:
./pyunzip.py master.zip
Run Code Online (Sandbox Code Playgroud)
或者
python3 pyunzip.py master.zip
Run Code Online (Sandbox Code Playgroud)
./pyunzip.py master.zip
Run Code Online (Sandbox Code Playgroud)
用法:
./perlunzip master.zip
Run Code Online (Sandbox Code Playgroud)
或者
perl perlunzip.pl master.zip
Run Code Online (Sandbox Code Playgroud)
也可以看看
Ste*_*nny 27
我喜欢bsdtar
到unzip
/ zip
。对于提取,它们非常相似:
bsdtar -x -f /one/two/three/four.zip -C /five
unzip /one/two/three/four.zip -d /five
Run Code Online (Sandbox Code Playgroud)
但是对于压缩,bsdtar
获胜。假设你有这个输入:
/one/two/three/alfa/four.txt
/one/two/three/bravo/four.txt
Run Code Online (Sandbox Code Playgroud)
并希望在 zip 文件中包含此内容:
alfa/four.txt
bravo/four.txt
Run Code Online (Sandbox Code Playgroud)
这很容易bsdtar
:
bsdtar -a -c -f four.zip -C /one/two/three alfa bravo
Run Code Online (Sandbox Code Playgroud)
zip 没有-d
像 unzip 这样的选项,所以除非你cd
先,否则你无法实现上述目标。
kas*_*der 24
以下是我认为有用的选项的详细说明:
命令:unzip -[option] zip-path。 -d 将文件解压缩到的可选目录 -l 列出存档文件。 -P password使用密码解密加密的 zipfile 条目(如果有)。 -t 使用循环冗余检查测试存档文件。 -u 更新现有文件。 -z 归档注释
M.A*_*pon 11
按照以下说明操作:http : //www.codebind.com/linux-tutorials/unzip-zip-file-using-terminal-linux-ubuntu-linux-mint-debian/
安装解压
所以首先我们需要在我们的系统上安装 unzip 如果它没有安装。unzip 命令用于从 ZIP 存档中提取文件。
运行以下命令进行安装
unzip
Run Code Online (Sandbox Code Playgroud)sudo apt-get install unzip
unzip
句法Run Code Online (Sandbox Code Playgroud)$ unzip [-aCcfjLlnopqtuvy] [-d dir] zipfile
现在请按照以下步骤操作:
解压缩文件
选项 1 – 如果 Zip 文件位于您的终端所在的同一目录/文件夹中,并且我们希望将其解压缩到当前工作目录中。
使用以下命令实现上述场景
Run Code Online (Sandbox Code Playgroud)sudo unzip zip_file_name.zip
如果 zip 文件受密码保护,则使用以下命令:
Run Code Online (Sandbox Code Playgroud)sudo ubzip -P zip_file_name.zip
请确保您使用 -P(大写 P)而不是 -p,因为它们是不同的选项。
选项 2 – 如果 zip 文件不在同一目录中,而我们想将文件解压缩/解压缩到不同目录中。
使用以下命令实现上述场景
Run Code Online (Sandbox Code Playgroud)sudo unzip path/filename.zip -d another_path_or_same_path
如果我们不使用选项 -d,文件将被提取到当前工作目录。
如果 zip 文件受密码保护,我们也可以使用
-P
.在 Linux / Unix 中使用 tar 命令
tar
是 Tape Archive 的首字母缩写词。tar 命令用于在 Linux/Unix 中操作档案。系统管理员使用焦油经常命令懵了一堆文件或目录的进入高度压缩的档案被称为tarball
或tar
,bzip
并且gzip
在的Linux / Unix系统。tar 语法
Run Code Online (Sandbox Code Playgroud)tar [OPTION...] [FILE]...
或者
tar 需要的标志
Run Code Online (Sandbox Code Playgroud)tar {-r|-t|-c|-x|-u}
tar 可选标志
Run Code Online (Sandbox Code Playgroud)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
Run Code Online (Sandbox Code Playgroud)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 压缩存档Run Code Online (Sandbox Code Playgroud)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 都是相似的。
Run Code Online (Sandbox Code Playgroud)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
文件压缩为名为 .tar 的 tar 文件sample_dir.tar.gz
。运行以下命令以实现上述目标。
Run Code Online (Sandbox Code Playgroud)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
通过压缩目录或单个文件来创建存档文件Run Code Online (Sandbox Code Playgroud)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
到当前目录。Run Code Online (Sandbox Code Playgroud)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
在这种情况下,以下命令将提取或解压缩指定目录中的文件。Run Code Online (Sandbox Code Playgroud)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