示例 13:解压 .tar.bz2 或 .tbz2 文件
使用 -j 和 -x 选项来解压 .tar.bz2 或 .tbz2 文件。如下:
[root@linuxtechi ~]# tar -jxpvf myarchive.tbz2 -C /tmp/
或
[root@linuxtechi ~]# tar xpvf myarchive.tbz2 -C /tmp/
示例 14:使用 tar 命令进行定时备份
总有一些实时场景需要我们对指定的文件和目录进行打包,已达到日常备份的目的。假设需要每天备份整个 /opt 目录,可以创建一个带 tar 命令的 cron 任务来完成。如下:
[root@linuxtechi ~]# tar -zcvf optbackup-$(date +%Y-%m-%d).tgz /opt/
为以上命令创建一个 cron 任务即可。
示例 15:使用 -T 及 -X 创建压缩归档文件
想像这样一个场景:把想要归档和压缩的文件及目录记录到到一个文件,然后把这个文件当做 tar 命令的传入参数来完成归档任务;而有时候则是需要排除上面提到的这个文件里面记录的特定路径后进行归档和压缩。
在 tar 命令中使用 -T 选项来指定该输入文件,使用 -X 选项来指定包含要排除的文件列表。
假设要归档 /etc、/opt、/home 目录,并排除 /etc/sysconfig/kdump 和 /etc/sysconfig/foreman 文件,可以创建 /root/tar-include 和 /root/tar-exclude 然后分别输入以下内容:
[root@linuxtechi ~]# cat /root/tar-include /etc /opt /home [root@linuxtechi ~]# [root@linuxtechi ~]# cat /root/tar-exclude /etc/sysconfig/kdump /etc/sysconfig/foreman [root@linuxtechi ~]#
运行以下命令来创建一个压缩归档文件。
[root@linuxtechi ~]# tar zcpvf mybackup-$(date +%Y-%m-%d).tgz -T /root/tar-include -X /root/tar-exclude
示例 16:查看 .tar、.tgz 和 .tbz2 文件的大小
使用如下命令来查看 (压缩) tar 文件的体积。
[root@linuxtechi ~]# tar -czf - data.tar | wc -c 427 [root@linuxtechi ~]# tar -czf - mybackup-2016-09-09.tgz | wc -c 37956009 [root@linuxtechi ~]# tar -czf - myarchive.tbz2 | wc -c 30835317 [root@linuxtechi ~]#
示例 17:分割体积庞大的 tar 文件为多份小文件
类 Unix 系统中使用 split 命令来将大体积文件分割成小体积文件。大体积的 tar 当然也可以使用这个命令来进行分割。
假设需要将 “mybackup-2016-09-09.tgz” 分割成每份 6 MB 的小文件。
Syntax : split -b <Size-in-MB> <tar-file-name>.<extension> “prefix-name”
[root@linuxtechi ~]# split -b 6M mybackup-2016-09-09.tgz mybackup-parts
以上命令会在当前目录分割 mybackup-2016-09-09.tgz 文件成为多个 6 MB 的小文件,文件名为 mybackup-partsaa ~ mybackup-partsag。如果在要在分割文件后以数字而非字母来区分,可以在以上的 split 命令使用-d 选项。








