17个Linux tar命令实用示例

2019-10-13 17:27:42王冬梅

 [root@linuxtechi ~]# tar -tvf myarchive.tar root/anaconda-ks.cfg
-rw------- root/root 953 2016-08-24 01:33 root/anaconda-ks.cfg
[root@linuxtechi ~]# 

示例 3:追加文件到归档(tar)文件中 

-r 选项用于向已有的 tar 文件中追加文件。下面来将 /etc/fstab 添加到 data.tar 中。
 [root@linuxtechi ~]# tar -rvf data.tar /etc/fstab

注:在压缩过的 tar 文件中无法进行追加文件操作。 

示例 4:从 tar 文件中释放文件以及目录 

-x 选项用于释放出 tar 文件中的文件和目录。下面来释放上边创建的 tar 文件中的内容。
 [root@linuxtechi ~]# tar -xvf myarchive.tar

这个命令会在当前目录中释放出 myarchive.tar 文件中的内容。 

示例 5:释放 tar 文件到指定目录 

假如你想要释放 tar 文件中的内容到指定的文件夹或者目录,使用 -C 选项后边加上指定的文件的路径。 

[root@linuxtechi ~]# tar -xvf myarchive.tar -C /tmp/

示例 6:释放 tar 文件中的指定文件或目录 

假设你只要释放 tar 文件中的 anaconda-ks.cfg 到 /tmp 目录。 

语法如下:

 # tar –xvf {tar-file } {file-to-be-extracted } -C {path-where-to-extract}
[root@linuxtechi tmp]# tar -xvf /root/myarchive.tar root/anaconda-ks.cfg -C /tmp/
root/anaconda-ks.cfg
[root@linuxtechi tmp]# ls -l /tmp/root/anaconda-ks.cfg
-rw-------. 1 root root 953 Aug 24 01:33 /tmp/root/anaconda-ks.cfg
[root@linuxtechi tmp]# 

示例 7:创建并压缩归档文件(.tar.gz 或 .tgz) 

假设我们需要打包 /etc 和 /opt 文件夹,并用 gzip 工具将其压缩。可以在 tar 命令中使用 -z 选项来实现。这种 tar 文件的扩展名可以是 .tar.gz 或者 .tgz。 

[root@linuxtechi ~]# tar -zcpvf myarchive.tar.gz /etc/ /opt/

[root@linuxtechi ~]# tar -zcpvf myarchive.tgz /etc/ /opt/

示例 8:创建并压缩归档文件(.tar.bz2 或 .tbz2) 

假设我们需要打包 /etc 和 /opt 文件夹,并使用 bzip2 压缩。可以在 tar 命令中使用 -j 选项来实现。这种 tar 文件的扩展名可以是 .tar.bz2 或者 .tbz。

 [root@linuxtechi ~]# tar -jcpvf myarchive.tar.bz2 /etc/ /opt/

[root@linuxtechi ~]# tar -jcpvf myarchive.tbz2 /etc/ /opt/

示例 9:排除指定文件或类型后创建 tar 文件 

创建 tar 文件时在 tar 命令中使用 –exclude 选项来排除指定文件或者类型。假设在创建压缩的 tar 文件时要排除 .html 文件。

 [root@linuxtechi ~]# tar -zcpvf myarchive.tgz /etc/ /opt/ --exclude=*.html