📅  最后修改于: 2023-12-03 15:20:28.440000             🧑  作者: Mango
tar
命令是 Linux 系统下最常用的压缩格式之一,它可用于将多个文件或整个目录打包成一个归档文件,以便在备份、复制或移动它们时方便管理。
tar
命令的基本语法如下所示:
tar [-acdefhiklnoprstuvxz] [--file ARCHIVE] [--exclude FILE|DIRECTORY] [--exclude-from FILE] [--directory DIR] [--no-recursion] [--remove-files] [--same-owner] [--atime-preserve] [FILE(S)]
其中,常用的参数选项如下:
-c
:创建归档文件-f
:指定归档文件名-v
:显示归档文件的详细列表-x
:从归档文件中提取文件-z
:对归档文件使用 gzip 压缩-j
:对归档文件使用 bzip2 压缩-t
:列出归档文件的内容使用 tar
命令压缩文件或目录的语法如下:
tar -czvf ARCHIVE_NAME.tar.gz FILE(S)_OR_DIRECTORY
其中,-c
参数表示创建归档文件,-z
参数表示对归档文件使用 gzip 压缩,-v
参数表示显示归档文件的详细列表,-f
参数表示指定归档文件名,ARCHIVE_NAME.tar.gz
就是归档文件的名称,.tar.gz
是文件压缩格式。
示例:
tar -czvf archive.tar.gz /home/user1/docs
以上命令将压缩 /home/user1/docs
目录,归档文件名为 archive.tar.gz
。
如果要压缩多个文件或目录,可以在命令行中使用空格将它们分隔开:
tar -czvf ARCHIVE_NAME.tar.gz FILE_OR_DIRECTORY1 FILE_OR_DIRECTORY2 ... FILE_OR_DIRECTORYN
示例:
tar -czvf archive.tar.gz /home/user1/docs /home/user2/pictures /home/user3/music
以上命令将压缩 /home/user1/docs
目录、/home/user2/pictures
目录和 /home/user3/music
目录,归档文件名为 archive.tar.gz
。
如果要压缩一个目录,并排除其中的某些文件或子目录,可以使用 --exclude
参数选择性排除它们:
tar -czvf ARCHIVE_NAME.tar.gz --exclude FILE_OR_DIRECTORY_TO_EXCLUDE FILE_OR_DIRECTORY_TO_ARCHIVE
示例:
tar -czvf archive.tar.gz --exclude logs /home/user1/project
以上命令将压缩 /home/user1/project
目录,并排除其中的 logs
目录,归档文件名为 archive.tar.gz
。
tar
命令可以将多个文件或目录归档为一个文件,但是在解压时,需要一次性解压所有文件。chown
和 chmod
命令来解决。以上是 tar
命令的主要用法介绍,具体用法可参考 man tar
命令帮助文档。