使用 tar 和 gz 在 Ubuntu 终端中创建存档

rad*_*scu 5 linux terminal tar gz ubuntu

我想存档 3 个文件夹,在 Ubuntu 命令提示符下给出它们的名称。
当我使用tar -c abc tt zz-> 时,它什么也不做。

day*_*aya 10

你可以使用这个命令

 tar -cvzf tarname.tar.gz a b c
Run Code Online (Sandbox Code Playgroud)

例如:

x@x:/tmp/aas$ touch a b c
x@x:/tmp/aas$ ls
a  b  c
x@x:/tmp/aas$ tar cvzf tarname.tar.gz a b c
a
b
c
x@x:/tmp/aas$ ls
a  b  c  tarname.tar.gz
x@x:/tmp/aas$ rm a b c
x@x:/tmp/aas$ ls
tarname.tar.gz
x@x:/tmp/aas$ gunzip -c tarname.tar.gz | tar xvf -
a
b
c
x@x:/tmp/aas$ ls
a  b  c  tarname.tar.gz
x@x:/tmp/aas$ 
Run Code Online (Sandbox Code Playgroud)

  • 这将在一个命令中 tar 和 gzip 它。如果你愿意,你也可以单独做 (2认同)

d34*_*r53 6

您要么需要将该输出重定向到您的 tarball 名称,如下所示:

tar -c abc tt zz > tarball.tar
Run Code Online (Sandbox Code Playgroud)

(小心,如​​果 tarball.tar 已经存在,它将覆盖它)或者您需要使用-ftar 标志并指定一个文件名,如下所示:

tar -cf tarball.tar abc tt zz
Run Code Online (Sandbox Code Playgroud)

  • 如果你在 tar 命令中添加 `-z` 标志,它会告诉它使用 gzip 压缩(例如 `tar -czf tarball.tar.gz abc tt zz`),`-j` 将使用 bzip2(例如 `tar - cjf tarball.tar.bz2 abc tt zz`)。无论是否使用压缩,tar 处理其输出的方式都是相同的。如果没有 `-f`,它会转到 `stdout`。 (4认同)