美文网首页我用 LinuxShell
tar 命令学习笔记

tar 命令学习笔记

作者: 大长鲸 | 来源:发表于2016-10-30 13:36 被阅读77次

    一、基本用法

    1. 创建归档文件

    • tar cf example.tar file_1 file_2 file_n
      • c = creat
      • f = file=ARCHIVE

    把命令选项翻译成日常用语:
    cf = create a ARCHIVE file = 创建一个归档文件。

    2. 创建并压缩归档文件

    在 Linux 系统上,归档和压缩是两个不同的工作,归档的文件可以被压缩,也可以不压缩,这一点与 Windows 系统不同。Windows 常见的归档方式是通过 7zip/WinRAR 这类压缩解压软件把一系列文件压缩成单个文件,归档和压缩其实是同一件事。

    • tar czf example.tar.gz file_1 file_2 file_n
      • z = gzip
    • tar cjf example.tar.bz2 file_1 file_2 file_n
      • j = bzip2

    把命令选项翻译成日常用语:
    czf = create a gzipped ARCHIVE file = 创建一个 gzip 压缩的归档文件。

    3. 列出归档文件内容

    • tar tf example.tar
      • t = list

    4. 提取归档文件内容

    • tar xf example.tar
      • x = extract
    • tar xzf example.tar.gz
    • tar xjf example.tar.bz2

    5. 模式与选项

    tar 命令的参数有模式选项的分别,模式参数必须写在选项参数前面。

    参数 模式 选项
    -c yes
    -t yes
    -x yes
    -f yes
    -j yes
    -z yes

    二、高级用法

    • find . -iname 'file-a' | tar czf example.tar.gz --files-from=-
      • --files-from= 也可以简写成 -T,在 -c 模式下表示「根据指定的文件创建归档文件」。
      • 末尾的减号 - 非常重要,也很常见,用来表示标准输入/输出,在这里具体指 find 命令查找到的文件清单。

    三、Tips

    如何查找一个命令的某个指定选项的用法,比如:tar -T

    1. man tar
    2. /^ *-T:
      • / 表示「开始查找」,和 vim 里一样
      • ^ 表示「从每一行的行首开始」,和正则表达式一样
      • 注意,第三个字符是空格 space
      • * 是通配符
      • -T 是需要查找的选项

    这个方法有局限,只有选项或参数位于一行的行首才有效,像 tar --files-from 这个选项就查不到,因为它所在的行是这样的:-T, --files-from=FILE

    相关文章

      网友评论

        本文标题:tar 命令学习笔记

        本文链接:https://www.haomeiwen.com/subject/xenyuttx.html