这是我参与8月更文挑战的第17天,活动详情查看:8月更文挑战
tar 命令简介
- 打包压缩是日常工作中备份文件的一种方式
- 在不同操作系统中,常用的打包压缩方式是不同的
Windows常用rarMac常用zipLinux常用tar.gz
tar 是 Linux 中最常用的打包工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件。
注意: tar 只负责打包和解包,不负责压缩。
小明,把这个目录打成一个
tar包
# 打包文件
tar -cvf 打包文件.tar 被打包的文件/路径...
# 解包文件
tar -xvf 打包文件.tar
【!】
c是create,x是extract
tar 选项说明
| 选项 | 含义 |
|---|---|
c | 生成档案文件,创建打包文件 |
x | 解开档案文件 |
v | 列出归档解档的详细过程,显示进度 |
f | 指定档案文件名称, f 后面一定是 .tar 文件,所以必须放选项最后 |
注意:
f选项必须放在最后,其他选项顺序可以随意
打包解包范例
打包解包演练
- 删除桌面下的所有内容
rm -r *ls -l
- 在桌面下新建三个空白文件
01.py、02.py、03.py
touch 01.pytouch 02.pytouch 03.py
- 将这三个文件打一个
py.tar的包
可以使用通配符
jpch89@ubuntu:~/Desktop$ tar -cvf py.tar *.py
01.py
02.py
03.py
不使用通配符的话用空格隔开
tar -cvf py.tar 01.py 02.py 03.py
查看一下结果
jpch89@ubuntu:~/Desktop$ ls -l
total 12
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 01.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 02.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 03.py
-rw-r--r-- 1 jpch89 jpch89 10240 Sep 20 01:31 py.tar
jpch89@ubuntu:~/Desktop$ ls -lh
total 12K
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 01.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 02.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 03.py
-rw-r--r-- 1 jpch89 jpch89 10K Sep 20 01:31 py.tar
- 新建
tar目录,并且将py.tar移动到tar目录下
mkdir tarmv py.tar tartree
- 解包
py.tar
cd tar
然后解包
jpch89@ubuntu:~/Desktop/tar$ tar -xvf py.tar
01.py
02.py
03.py
jpch89@ubuntu:~/Desktop/tar$ ls -l
total 12
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 01.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 02.py
-rw-r--r-- 1 jpch89 jpch89 0 Sep 20 01:30 03.py
-rw-r--r-- 1 jpch89 jpch89 10240 Sep 20 01:31 py.tar
解包出来的文件默认与
*.tar文件在同一层目录
tar 命令配合 gzip 命令实现压缩和解压
tar 与 gzip 命令结合可以使用实现文件打包和压缩
tar只负责打包文件,但不压缩- 用
gzip压缩tar打包后的文件,其扩展名一般用xxx.tar.gz
在
Linux中,最常见的压缩文件格式就是xxx.tar.gz
在 tar 命令中有一个选项 -z 可以调用 gzip ,从而可以方便的实现压缩和解压缩的功能。
命令格式
# 压缩文件
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
# 解压缩文件
tar -zxvf 打包文件.tar.gz
# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径
-C解压缩到指定目录,注意:要解压缩的目录必须存在。
tar 命令配合 bzip2 实现压缩和解压
tar与bzip2命令结合可以使用实现文件打包和压缩(用法和gzip一样)tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般是xxx.tar.bz2bzip2中的2要读成two
在 tar 命令中有一个选项 -j 可以调用 bzip2 ,从而可以方便的实现压缩和解压缩的功能。
命令格式:
# 压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...
# 解压缩文件
tar -jxvf 打包文件.tar.bz2
注意:同样可以使用
-C指定解压缩的目录,该目录必须已经存在!