我是 Linux 的新手,我有一个名为
stacey
的文件夹。我怎样才能从中创建一个压缩的 tarball?
我可以用
tar -cvzf stacey.tar *
给文件夹加 tar。但是我可以同时添加 7zip,因为我有一个压缩的 tarball stacey.tar.gz
吗?
tar -cvz -f path_to_the_archive_to_be_created .
例子:
[user@machine temp]$ tar -cvz -f ~/dir1/temp.tar.gz .
当前目录(temp)被归档到
~/dir1/temp.tar.gz
tar -cvz -f path_to_the_archive_to_be_created -C path_to_the_remote_directory .
例子:
[user@machine ~]$ tar -cvz -f ~/dir1/temp.tar.gz -C ~/temp .
目录 ~/temp 被归档到
~/dir1/temp.tar.gz
.
-c, --create create a new archive
-v, --verbose verbosely list files processed
-z, --gzip, --gunzip, --ungzip filter the archive through gzip
-f, --file=ARCHIVE use archive file or device ARCHIVE
-C, --directory=DIR change to directory DIR
在
-z
命令上传递 tar
将 gzip 文件,因此您应该将文件命名为 stacey.tar.gz
(或 stacey.tgz
),而不是 stacey.tar
:
tar -cvzf stacey.tar.gz *
如果你想 7zip 文件(而不是 Gzip),删除
-z
,保留 stacey.tar
,并在 7z stacey.tar
命令完成后运行 tar
:
tar -cvf stacey.tar *
7z a stacey.tar.7z stacey.tar
或者您可以使用管道一步完成:
tar -cvf - * | 7z a -si stacey.tar.7z
7zip 更像
tar
,因为它在存档中保留文件索引。你实际上可以完全跳过tar
步骤,只使用7zip:
7z a stacey.7z *