tar命令
用于创建、管理和提取归档文件。支持多种压缩格式,如gzip(.gz),bzip2(.bz2),xz(.xz)等。
语法
tar [OPTION...] [FILE]...
常用选项:
-A , --catenate , --concatenate :将归档文件中的文件,目录追加到归档中(压缩文件无效)
-c , --create :创建新的归档文件。
-C DIRECTORY , --directory=DIRECTORY :切换到指定目录之前提取文件。
-x , --extract , --get :从归档文件中提取文件。
-t , --list :列出归档文件的内容。
-f , --file=ARCHIVE :指定归档文件名;必须是最后一个选项。
-v , --verbose :详细模式,显示正在处理的文件。
-z , --gzip :通过 gzip 压缩或解压。
-j , --bzip2 :通过 bzip2 压缩或解压(需要安装 bzip2)。
-J , --xz :通过 xz 压缩或解压(需要安装 xz-utils)。
-p , --preserve-permissions :保留文件权限。
--exclude=PATTERN :排除与模式匹配的文件。
-r , --append :将文件追加到归档的末尾 (压缩包无效)。
-u , --update :仅追加比归档中文件更新的文件或不存在的文件(对压缩包无效)。
示例
# 创建归档文件
tar -cvf archive.tar file1 file2 dir1
# 提取归档文件中的文件
tar -xvf archive.tar
#查看归档内容
tar -tvf archive.tar
#使用gzip压缩
tar -czvf archive.tar.gz file1 file2 dir1
#解压gzip的压缩包
tar -xzvf archive.tar.gz
#使用bzip2压缩
tar -cjvf archive.tar.bz2 file1 file2 dir1
#解压bzip2的压缩包
tar -xjvf archive.tar.bz2
#使用xz压缩
tar -cJvf archive.tar.xz file1 file2 dir1
#解压xz的压缩包
tar -xJvf archive.tar.xz
#保留文件属性
tar -cpvf archive.tar.xz file1 file2 dir1
#追加文件
tar -vf archive.tar -r file3
#更新文件
tar -uvf archive.tar file2 file3
#将归档中的文件追加到另一个归档中
[root@iZuf6a52mexrwakfo6ogecZ ~] tar -cvf test1.tar 123
123
[root@iZuf6a52mexrwakfo6ogecZ ~] tar -cvf test2.tar 321
321
[root@iZuf6a52mexrwakfo6ogecZ ~] tar -Avf test1.tar test2.tar
[root@iZuf6a52mexrwakfo6ogecZ ~] tar -tvf test1.tar
-rw-r--r-- root/root 0 2024-06-24 10:05 123
-rw-r--r-- root/root 0 2024-06-21 14:24 321