用途
tar用来创建归档(档案)文件(也就是打包), 备份文件及恢复文件, 另外也有压缩和解压缩的功能. 打包是指将一大堆文件或目录什么的变成一个总的文件, 压缩则是将一个大的文件通过一 些压缩算法变成一个小文件. 为什么要区分这两个概念呢?其实这源于Linux中的很多压缩程序只能针对一个文件进行压缩. 这样当你想要压缩一大堆文件时. 你就得先借助另它的工具将这一大堆文件先打成一个包. 然后再就原来的压缩程序进行压缩.
用法
tar [option] [file]
- 选项包括
-c 创建新归档
-r 备份内容从档案尾开始存放(追加)
-u 将文件从归档恢复到磁盘
-t 显示档案中文件的文件名
-v 显示执行过程中的文件清单
-f 指定文件名
示例
- 创建一个测试文件:
mkdir test cd test touch 1.c 2.c 3.c
- 打包text目录:
# 打包
tar -cvf test.tar test
# 可以使用-C将打包好的文件放在指定目录 mkdir temp tar -cvf test.tar test -C temp # 比较常用的是在打包的同时进行压缩 tar -cvzf test.tar.gz test # 另外一种压缩方法,这种方法的压缩率通常更高(适用于文件比较大的情况) tar -cvjf test.tar.bz2 test
- 还原
# 还原普通包
tar -xvf test.tar
# 也可以还原到指定目录 tar -xvf test.tar -C temp # 还原.gz压缩包 tar -xvzf test.tar.gz # 还原.bz2压缩包 tar -xvjf test.tar.bz2