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/

  • 相关阅读:
    cf1108E2 线段树类似扫描线
    poj1185 状态压缩经典题
    cf1110F 离线+树上操作+线段树区间更新
    tarjan求lca :并查集+dfs
    cf1110E 思维
    cf1110d 线性dp
    cf842D 01字典树|线段树 模板见hdu4825
    cf842C 树形dp+gcd函数
    cf581F 依赖背包+临时数组 好题
    hdu5758 思维,树形dp
  • 原文地址:https://www.cnblogs.com/black-watch/p/12909816.html
Copyright © 2011-2022 走看看