CentOS 系统中 tar 命令的使用指南
一、概念介绍
tar
是 Unix 和 Linux 系统中常用的文件打包工具,用于将多个文件或目录归档成一个文件,常用于备份和压缩。tar
代表 "tape archive"(磁带档案),因为早期计算机系统使用磁带备份数据,尽管现在的tar
文件通常存储在硬盘或其他介质上,但这个名称依然得以保留。
二、常用操作
创建一个新的归档文件
1.1 基本命令
tar cvf archive.tar /path/to/files
此命令会创建一个新的归档文件archive.tar
,并将指定路径的文件包含在内。
1.2 参数说明
c
:创建新的归档文件。
v
:显示详细信息,列出处理中的文件。
f
:指定归档文件的名称。
解压一个归档文件
2.1 基本命令
tar xvf archive.tar
此命令会将archive.tar
文件中的内容解压到当前目录。
2.2 参数说明
x
:从归档文件中提取文件。
用 gzip 压缩或解压文件
3.1 压缩为.tar.gz
文件
tar czvf archive.tar.gz /path/to/files
此命令会创建一个.tar.gz
文件,这是先用tar
打包再用gzip
压缩的结果。
3.2 解压缩.tar.gz
文件
tar xzvf archive.tar.gz
此命令会将.tar.gz
文件解压缩并提取内容。
3.3 参数说明
z
:通过gzip
压缩或解压。
用 bzip2 压缩或解压文件
4.1 压缩为.tar.bz2
文件
tar cjvf archive.tar.bz2 /path/to/files
此命令会创建一个.tar.bz2
文件,这是先用tar
打包再用bzip2
压缩的结果。
4.2 解压缩.tar.bz2
文件
tar xjvf archive.tar.bz2
此命令会将.tar.bz2
文件解压缩并提取内容。
4.3 参数说明
j
:通过bzip2
压缩或解压。
tar tvf archive.tar
此命令会列出archive.tar
文件中的所有文件和目录。
参数说明
t
:列出归档文件中的内容。
三、高级用法与示例
排除特定文件或目录
使用exclude
选项可以从归档文件中排除特定文件或目录,要打包/etc
目录,但排除密码文件/etc/passwd
:
tar exclude=/etc/passwd czvf etc_backup.tar.gz /etc
追加文件到现有归档
使用r
选项可以向现有归档文件中追加文件,向archive.tar
追加newfile.txt
:
tar rvf archive.tar newfile.txt
保留文件权限与属性
使用p
选项可以在解压时保留文件的原始权限和属性。
tar xpvf archive.tar
转换归档为标准输出
使用O
(大写字母 O) 选项可以将归档文件转换为标准输出,将archive.tar
转换为标准输出并重定向到新文件newfile.txt
:
tar xOvf archive.tar > newfile.txt
或者将多个归档文件合并:
cat archive1.tar archive2.tar > combined_archive.tar
然后可以使用以下方法解压合并后的归档:
tar xvf combined_archive.tar
这种方法适用于需要将多个归档文件合并为一个的情况,但需要注意合并后的文件顺序问题。
四、归纳
本文详细介绍了 CentOS 系统中tar
命令的基本用法和高级功能,涵盖了从基本的文件打包、解压到使用不同压缩算法进行压缩和解压缩的各个方面,通过掌握这些命令,用户可以更高效地管理系统中的归档文件,提高日常工作的效率,无论是进行简单的文件备份还是复杂的数据管理任务,tar
命令都是不可或缺的工具。