linux常用命令(Linux解压缩tar.gz和zip包命令)

linux常用命令(Linux解压缩tar.gz和zip包命令) 2

tar压缩和解压缩

如何持久地记住tar命令选项?

  • cfv: create file verbosely.
  • xfv: extract files verbosely.

tar命令

打包命令

记忆关键词: create an archived file verbosely from source。这句英文与下文的命令格式一一对应:

  • an archived file: 指一个被创建的包文件。
  • source: 指一个源目录或文件。
$ tar cfv <一个被创建的tar包文件的路径> <一个或多个源目录或文件的路径> 

$ tar cfv data1.tar ./data1
./data1/
./data1/file2.txt
./data1/file1.txt
./data1/file3.txt

压缩命令

记忆关键词: create a compressed file verbosely from source。这句英文与下文的命令格式一一对应:

  • a compressed file: 一个被创建的压缩文件。
  • source: 一个源目录或文件。
$ tar czfv <一个被创建的tar.gz压缩文件的路径> <一个或多个源目录或文件的路径> 
$ tar cjfv <一个被创建的tar.bz2压缩文件的路径> <一个或多个源目录或文件的路径> 

$ tar czfv data2.tar.gz ./data2
./data2/
./data2/file2.txt
./data2/file1.txt
./data2/file3.txt

$ tar cjfv data3.tar.bz2 ./data3
./data3/
./data3/file2.txt
./data3/file1.txt
./data3/file3.txt

# 一次将多个目录压缩进一个包里
$ tar czfv abc.tar.gz data1 data2 data3
data1/
data1/file2.txt
data1/file1.txt
data1/file3.txt
data2/
data2/file2.txt
data2/file1.txt
data2/file3.txt
data3/
data3/file2.txt
data3/file1.txt
data3/file3.txt

解压缩命令

记忆关键词: extract from a compressed file to a specified directory。这句英文与下文的命令格式一一对应:

  • a compressed file: 一个压缩文件。
  • a specified directory: 被解压缩到一个指定的目录。若不指定,则默认是当前目录。

将一个压缩文件解压缩到当前目录

  • tar xfv <一个tar包文件的路径>
  • tar xzfv <一个tar.gz压缩文件的路径>
  • tar xjfv <一个tar.bz2压缩文件的路径>

将一个压缩文件解压缩到一个指定的目录

  • tar xfv <一个tar包文件的路径> -C <被解包到一个指定目录>
  • tar xzfv <一个tar.gz压缩文件的路径> -C <被解压到一个指定目录>
  • tar xjfv <一个tar.bz2压缩文件的路径> -C <被解压到一个指定目录>
# 将data1.tar解包到./uncompressed/目录
$ tar xfv data1.tar -C ./uncompressed/
  
# 将data2.tar.gz解压缩到./uncompressed/目录
$ tar xzfv data2.tar.gz -C ./uncompressed/

# 将data3.tar.bz2解压缩到./uncompressed/目录
$ tar xjfv data3.tar.bz2 -C ./uncompressed/

查看包里包含哪些目录或文件

$ tar tf <一个tar包文件的路径>
$ tar tzf <一个tar.gz压缩文件的路径>
$ tar tjf <一个tar.bz2压缩文件的路径>

$ tar tf data1.tar 
./data1/
./data1/file2.txt
./data1/file1.txt
./data1/file3.txt

$ tar tzf data2.tar.gz 
./data2/
./data2/file2.txt
./data2/file1.txt
./data2/file3.txt

$ tar tjf data3.tar.bz2 
./data3/
./data3/file2.txt
./data3/file1.txt
./data3/file3.txt

zip命令

压缩命令

$ zip -r <被创建的zip文件的路径> <一个或多个目录或文件的路径>

# 将一个目录压缩进一个包里
$ zip -r data4.zip ./data4
  adding: data4/ (stored 0%)
  adding: data4/file2.txt (stored 0%)
  adding: data4/file1.txt (stored 0%)
  adding: data4/file3.txt (stored 0%)

# 将多个目录压缩进一个包里
$ zip -r data22.zip data2 data3
  adding: data2/ (stored 0%)
  adding: data2/file2.txt (stored 0%)
  adding: data2/file1.txt (stored 0%)
  adding: data2/file3.txt (stored 0%)
  adding: data3/ (stored 0%)
  adding: data3/file2.txt (stored 0%)
  adding: data3/file1.txt (stored 0%)
  adding: data3/file3.txt (stored 0%)

解压缩命令

# 将一个zip文件解压到当前目录
$ unzip <一个zip文件的路径>

# 将一个zip文件解压缩到一个指定的目录
$ unzip <一个zip文件的路径> -d <被解压缩一个指定目录的路径>
  
# 解压时,覆盖掉(overwrite)已存在的文件
$ unzip -o <一个zip文件的路径>

# 解压时,不覆盖掉(not overwrite)已存在的文件,保留已存在的文件
$ unzip -n <一个zip文件的路径>
  
# 解压时,不包含某些目录或文件
$ unzip <一个zip文件的路径> -x <被排除的目录或文件>

查看一个压缩包里包含哪些目录或文件

$ unzip -l <一个zip文件的路径>
  
$ unzip -l ../data4.zip 
Archive:  ../data4.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2022-04-11 21:02   data4/
        0  2022-04-11 21:02   data4/file2.txt
        0  2022-04-11 21:02   data4/file1.txt
        0  2022-04-11 21:02   data4/file3.txt
---------                     -------
        0                     4 files

tar.xz文件的创建和解压缩

# 创建tar.xz文件
$ tar cJfv <一个tar.xz文件的路径> <一个或多个源目录或文件的路径> 

# 将tar.xz文件解压缩到当前目录或一个指定的目录
$ tar xJfv <一个tar.xz文件的路径>
$ tar xJfv <一个tar.xz文件的路径> -C <被解压缩到一个指定的目录>
 
# 查看tar.xz压缩文件里包含哪些目录或文件
$ tar tf <一个tar.xz文件的路径>

版权声明:本站文章及图片来自互联网及其他公众平台,版权归原作者,如有侵权请联系我们删除!

文章链接:https://www.bukoudai.com/rjkf/6677.html

(0)

相关推荐

  • 怎么样做软件开发(软件开发详细流程)

    很多人想开发一款手机软件应用基本都是请第三方外包公司或软件工具进行,但是却不知道软件开发需要经过什么样的流程,今天由我将开发软件流程分三大阶段八大步骤详细给大家讲解下。 第一阶段:确认需求 1、市场调研需求 市场调研是开发软件的基础。因为每个项目都是从市场调研,研究用户需求开始的,只有有市场需求,开发才有意义。 2、需求探讨评价 当确认有市场需求,就可以找开…

    2022年6月15日
    00
  • 开发一个微信小程序需要多少钱?需要多长时间?

    一位粉丝私信我:“开发一个微信小程序需要多少钱?” 微信小程序相信大家都已经不会陌生,我们的日常生活中也会经常使用到微信小程序,从我们出门逛街买奶茶,坐公交刷地铁,偷懒不出门买菜,都会熟练的打开微信小程序~ 很多商家企业也是看到了这个机会,都想开发一个微信小程序来服务自己的客人,其中小程序开发的价格也是大多数人比较关心的一个问题。 小程序也属于一个软件,并非…

    2022年6月14日
    00
  • Ubuntu Linux部署免费HTTPS证书的步骤

    Let’s Encrypt是免费的HTTPS证书,有效期是90天。到期后需要手动续期,或者编写一个定时任务自动去续期。 我当前所用Ubuntu版本为: root@hgdm:~# lsb_release -a LSB Version: security-11.1.0ubuntu2-noarch Distributor ID: Ubuntu Desc…

    2022年6月15日
    00
  • DNS是什么(dns劫持是怎么回事)怎么处理?

    DNS劫持是经常被用于网络攻击的一种手段,不仅破坏力强而且不易被发觉。DNS劫持也被称为域名劫持或者是DNS重定向,最直接的后果就是把我们要打开的网页被另一个网页替换掉了或者是让我们的网页直接打不开,那这里指的DNS是什么呢?平时说的DMS劫持又是什么意思?如果我们的电脑DNS被劫持了怎么办?对这三个问题我详细解答。 一、DNS是什么?DNS的工作原理是什么…

    2022年6月15日
    00
  • 开发一个APP需要多少钱(具体的费用估算方式)

    如果你认为一个APP开发项目只是需要开发费用?你就大错特错了,从头说说细点,内容纯干货建议点赞收藏 开发一个APP需要多少钱? 其实APP的费用一共分为三块 第三块我相信99%的人都不知道 第一当然就是软件的开发费用 具体的费用估算方式 这个过程你可以理解为是,请一个厨师来炒菜的费用,厨师把菜炒好了以后,不可能直接给你倒在桌子上面吃,这个时候就需要餐具来装这…

    2022年6月14日
    00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

客服QQ:822644393

在线咨询: QQ交谈

邮件:822644393@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信