zoukankan      html  css  js  c++  java
  • tar命令用法

    tar命令用法总结

    Usual Options

    • -c. create. 创建归档文件
    • -x. extract. 提取归档文件
    • -v. verbose. 显示详情
    • -f. file. 操作文件.
    • -t. 显示归档文件内容
    • -j. 调用bzip2
    • -z. 调用gzip
    • -r. 追加/更新文件(夹)到已经存在的归档文件
    • -wildcards. 通配符
    • -C. 指定目录

    注意:

    • --f选项是必须的. 表示创建/提取/查看的文件.

    Examples

    0.

    ame@LAPTOP-B4JLMD5L:/tmp$ ls
    file_1  file_2  file_3  file_4  file_5
    

    1. 创建.tar文件

    ame@LAPTOP-B4JLMD5L:/tmp$ tar cvf e1.tar file_1 file_2 file_3
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── e1.tar
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    0 directories, 6 files
    

    2. 创建.tar.gz/.tar.bz2文件

    ame@LAPTOP-B4JLMD5L:/tmp$ tar cvfz e2.tar.gz file_1 file_2 file_3
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar cvfj e2.tar.bz2 file_1 file_2 file_3
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── e1.tar
    ├── e2.tar.bz2
    ├── e2.tar.gz
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    0 directories, 8 files
    

    3. 提取.tar/.tar.gz/.tar.bz2文件

    ame@LAPTOP-B4JLMD5L:/tmp$ mkdir dir3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e1.tar -C dir3
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── dir3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── e1.tar
    ├── e2.tar.bz2
    ├── e2.tar.gz
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    1 directory, 11 files
    ame@LAPTOP-B4JLMD5L:/tmp$ mkdir dir4.1
    ame@LAPTOP-B4JLMD5L:/tmp$ mkdir dir4.2
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.gz -C dir4.1
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.bz2 -C dir4.2
    file_2
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── dir3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.1
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.2
    │   ├── file_2
    │   └── file_3
    ├── e1.tar
    ├── e2.tar.bz2
    ├── e2.tar.gz
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    3 directories, 16 files
    

    4. 列出.tar/.tar.gz/.tar.bz2文件的内容

    ame@LAPTOP-B4JLMD5L:/tmp$ tar tvf e1.tar 
    -rw-rw-rw- ame/ame           7 2020-05-09 17:30 file_1
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_2
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_3
    
    ame@LAPTOP-B4JLMD5L:/tmp$ tar tvf e2.tar.gz 
    -rw-rw-rw- ame/ame           7 2020-05-09 17:30 file_1
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_2
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar tvf e2.tar.bz2 
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_1
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_2
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_3
    

    5. 从.tar/.tar.gz/.tar.bz2文件中提取(解压)特定(单个/多个)文件

    ame@LAPTOP-B4JLMD5L:/tmp$ mkdir dir7.1 dir7.2 dir7.3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e1.tar -C dir7.1 file_1
    file_1
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.gz -C dir7.2 file_1 file_2
    file_1
    file_2
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.bz2 -C dir7.3 file_1 file_2 file_3
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── dir3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.1
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.2
    │   ├── file_2
    │   └── file_3
    ├── dir7.1
    │   └── file_1
    ├── dir7.2
    │   ├── file_1
    │   └── file_2
    ├── dir7.3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── e1.tar
    ├── e2.tar.bz2
    ├── e2.tar.gz
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    6 directories, 22 files
    

    注意:

    • -C选项应该放在文件名前面. 否则tar命令, 会认为-C是文件名.

    6. 按通配符从.tar/.tar.gz/.tar.bz2文件中提取(解压)特定文件

    ame@LAPTOP-B4JLMD5L:/tmp$ mkdir dir8.1 dir8.2 dir8.3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e1.tar -C dir8.1 --wildcards 'file*'
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.gz -C dir8.2 --wildcards 'file*'
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tar xvf e2.tar.bz2 -C dir8.3 --wildcards 'file*'
    file_1
    file_2
    file_3
    ame@LAPTOP-B4JLMD5L:/tmp$ tree
    .
    ├── dir3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.1
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir4.2
    │   ├── file_2
    │   └── file_3
    ├── dir7.1
    │   └── file_1
    ├── dir7.2
    │   ├── file_1
    │   └── file_2
    ├── dir7.3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir8.1
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir8.2
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── dir8.3
    │   ├── file_1
    │   ├── file_2
    │   └── file_3
    ├── e1.tar
    ├── e2.tar.bz2
    ├── e2.tar.gz
    ├── file_1
    ├── file_2
    ├── file_3
    ├── file_4
    └── file_5
    
    9 directories, 31 files
    

    7. 追加文件/目录到.tar/.tar.gz/.tar.bz2文件

    ame@LAPTOP-B4JLMD5L:/tmp$ tar cvf e9.tar file_1
    file_1
    ame@LAPTOP-B4JLMD5L:/tmp$ tar rvf e9.tar file_2
    file_2
    ame@LAPTOP-B4JLMD5L:/tmp$ tar rvf e9.tar file_3 file_4 
    file_3
    file_4
    ame@LAPTOP-B4JLMD5L:/tmp$ tar rvf e9.tar file_3 dir3 file_5
    file_3
    dir3/
    dir3/file_1
    dir3/file_2
    dir3/file_3
    file_5
    ame@LAPTOP-B4JLMD5L:/tmp$ tar tvf e9.tar 
    -rw-rw-rw- ame/ame           7 2020-05-09 17:30 file_1
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_2
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_3
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_4
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_3
    drwxrwxrwx ame/ame           0 2020-05-09 19:31 dir3/
    -rw-rw-rw- ame/ame           7 2020-05-09 17:30 dir3/file_1
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 dir3/file_2
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 dir3/file_3
    -rw-rw-rw- ame/ame           7 2020-05-09 17:31 file_5
    

    8. 追加文件/目录到.tar.gz/.tar.bz2文件

    不支持.

    References

    [1]. https://www.tecmint.com/18-tar-command-examples-in-linux/

  • 相关阅读:
    linux编译C
    Windows下ARP协议的工作原理简介
    窥探QQ基础数据库架构演变史
    JAVA培训—线程同步--卖票问题
    SQLite、MySQL和PostgreSQL 三种关系数据库哪个好?
    再论谭浩强《C语言程序设计》
    JPG加入RAR文件原理详解
    如何区分一个程序员是“老手“还是“新手“?
    AutoITx3.DLL所有函数及说明
    windows索引服务
  • 原文地址:https://www.cnblogs.com/black-watch/p/12909816.html
Copyright © 2011-2022 走看看