问题描述

刚刚从互联网上下载了一个.zip文件。我想用终端解压文件。什么是正确的方法来做到这一点?

最佳解决方案

如果unzip命令尚未安装在您的系统上,请运行:

sudo apt-get install unzip

安装解压缩实用程序后,如果要解压到特定的目标文件夹,可以使用:

unzip file.zip -d destination_folder

次佳解决方案

您可以简单地使用unzip。

安装它:apt-get install unzip

并使用它:unzip file.zip

第三种解决方案

一个更有用的工具是7z,它可以压缩和解压缩一系列压缩格式,特别是lzma,通常是提供最高压缩率的协议。

该命令安装7z:

sudo apt-get install p7zip-full

该命令列出了zip的内容:

7z l zipfile.zip

该命令提取zip的内容:

7z x zipfile.zip

第四种方案

您可以使用:

unzip file.zip -d somedir

提取到yourpath/somedir

如果你想提取到绝对路径,请使用

sudo unzip file.zip -d /somedir

第五种方案

如果您的目的地与源zip文件相同,则可以简单地执行以下操作:

unzip filename.zip

第六种方案

使用脚本工具:Perl和Python

这里的许多答案都提到了需要安装的工具,但没有人提到过,Ubuntu的两种脚本语言Perl和Python已经提供了所有必要的模块,允许您解压zip文件,这意味着您不需要安装任何东西其他。只需使用下面介绍的两个脚本中的任何一个来完成这项工作。它们很短,如果我们愿意的话,甚至可以压缩成one-liner命令。

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 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

第七种方案

以下是我认为有用的选项的详细说明:

Command: unzip -[option] zip-path.

-l List archive files.

-t Test archive files with cyclic redundancy check.

-u update the existing files.

-z archive comment.

第八种方案

我更喜欢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没有像解压缩一样的-d选项,所以除非先cd,否则无法实现上述目的。

参考资料

Linux终端解压压缩文件,如何从终端解压zip文件?相关推荐

  1. electron 解压zip_如何在Electron Framework中提取.zip文件的内容(解压缩)

    本文概述 必须先将其解压缩, 然后才能开始实际使用zip文件中的内容(文件).在本文中, 你将学习如何使用Electron Framework和decompress-zip模块解压缩.zip文件. 要 ...

  2. zip文件用什么打开,如何打开zip文件

        内容提要:zip文件用什么打开,如何打开zip文件,zip格式后缀的文件是经过了压缩打包的文件.zip文件用什么打开呢,如何打开zip文件,需要安装压缩软件.如果电脑上有可以直接右击打开,如果 ...

  3. python读取zip包内文件_Python模块学习:zipfile zip文件操作

    最近在写一个网络客户端下载程序,用于下载服务器上的数据.有些数据(如文本,office文档)如果直接传输的话,将会增加通信的数据量,使下载时间变长.服务器在传输这些数据之前先对其进行压缩,客户端接收到 ...

  4. python生成epub文件_python在内存中生成Zip文件!

    import zipfile import StringIO class MemoryZipFile(object): def __init__(self): #创建内存文件 self._memory ...

  5. Python组织文件 实践:将文件的不同版本备份为ZIP文件

    功能:备份文件夹.能将文件的不同版本备份下来,并且每个有不同的名字 #! python3 # backupToZip.py - 备份文件的不同版本到压缩文件中import zipfile,os#fol ...

  6. java下载zip文件损坏_使用Java下载.zip文件会导致损坏的.zip文件?

    我写了这个方法来下载最新的Selenium Chrome驱动程序,它不起作用.它导致损坏的.zip文件.任何人都可以发现我的错误在哪里?使用Java下载.zip文件会导致损坏的.zip文件? priv ...

  7. react——利用jszip实现文件批量下载并打包成zip文件

    本文章主要记录利用jszip实现文件批量下载图片,文档.mp3,视频(MP4)等文件,一般而言前端实现下载功能一般都是通过a链,这在下载单个文件的场景很实用,但如果是批量下载很多个文件,同样也可以用a ...

  8. c语言解析zip文件内容,C语言怎么读取zip文件内容??

    #include "stdio.h" #include "stdlib.h" void main() { FILE *fp; /*定义指向文件的指针*/ cha ...

  9. linux将目录打包压缩,linux 文件夹打包、解压命令大全

    TAR压缩tar -zcvf /data/backup.tar.gz /wwwroot tar -zcvf   打包后生成的文件名全路径     要打包的目录 以上的例子:把/wwwroot文件夹打包 ...

  10. Linux下压缩解压文件和目录的方法(zip, tar)

    Linux下可以用zip命令方便的压缩文件或文件夹 压缩文件 $ zip data.zip data.xls $ zip data.zip data1.xls data2.xls 上述命令把一个文件或 ...

最新文章

  1. 【js】绑定事件的两种方法
  2. boost::hana::tuple_t用法的测试程序
  3. 查询方法android的CursorLoader用法小结
  4. javascript之 原生document.querySelector和querySelectorAll方法
  5. java实现文件在线预览
  6. mysql -u root -p 解释
  7. java 变参 使用数组调用_java中的可变参数使用方法
  8. C++编程语言类对象的赋值与复制介绍(二)
  9. perl学习二:简单变量
  10. 从master-worker模型看团队管理
  11. CF991B Getting an A
  12. 迅为iTOP-4418开发板Android系统网络测速工具iPerf-TCP测试
  13. Linux挂载ISO镜像文件的两种方式
  14. python搜索pdf内容所在页码_用python合并多个pdf文件并标页码
  15. 论文代码复现 | 无人机与卡车联合配送(Python+Gurobi)(The flying sidekick traveling salesman problem)
  16. Jupyter 进行文字、图片格式编辑
  17. 软考__BS家族_WBS_OBS_RBS
  18. 数据结构 - 队列 环形队列(循环队列)
  19. Linux命令 - usermod命令
  20. android 监听wifi的连接状态,Android判断wifi状态 监听wifi连接

热门文章

  1. matlab电路元件二极管,tvs二极管有正负极吗?TVS管正负极区分方法
  2. 用scratch2.0编飞机大战
  3. Scratch3.0(一)初识Scratch3.0
  4. matlab线性拟合最大偏差值,algorithm – matlab:线性拟合的最佳点数
  5. 浅谈C# 多态的魅力(虚方法,抽象,接口实现)
  6. 炼丹笔记三:数据增强
  7. 运维工程师可能遇到的面试题
  8. 画PCB四层板细节总结
  9. 第十一届单片机蓝桥杯省赛(第一组)
  10. 通过 百度网盘 分享文件