Linux命令(66)之tar

linux命令之tar

1.tar介绍

linux命令tar是压缩打包工具,可以将多个文件合并为一个文件,打包后的文件后缀为tar。与其它linux命令不同的是,tar命令的用户为linux的所有用户。

2.tar用法

tar [参数] [fliename.压缩打包后缀] [filename]

|-----------|--------------------|
| 参数 | 说明 |
| -c | 新建文件 |
| -C <目录> | 文件解压缩释放至特定目录 |
| -x | 从备份文件中还原文件 |
| -t | 列出备份文件中的内容 |
| -f | 指定备份文件 |
| -z | 通过gzip命令处理备份文件 |
| -Z | 通过compress命令处理备份文件 |
| -v | 显示命令处理过程 |
| -j | 通过bzip2命令处理备份文件 |
| -J | 通过xz命令处理备份文件 |
[tar常用参数]

3.实例

3.1.将ztj目录打包成tar包

命令:

tar -cvf ztj.tar ztj/

复制代码
[root@rhel77 ~]# tar -cvf ztj.tar ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# ls -l ztj.tar
-rw-r--r-- 1 root root 10240 Jul 24 13:55 ztj.tar
[root@rhel77 ~]# 

3.2.压缩ztj.tar文件为ztj.tar.zip

命令:

zip -r ztj.tar.zip ztj.tar

复制代码
[root@rhel77 ~]# ls -l ztj.tar
-rw-r--r-- 1 root root 10240 Jul 24 13:55 ztj.tar
[root@rhel77 ~]# zip -r ztj.tar.zip ztj.tar
  adding: ztj.tar (deflated 96%)
[root@rhel77 ~]# ls -l ztj.tar.zip 
-rw-r--r-- 1 root root 604 Jul 24 13:56 ztj.tar.zip
[root@rhel77 ~]# 

3.3.将ztj目录打包压缩成ztj.tar.gz

命令:

tar -zcvf ztj.tar.gz ztj/

复制代码
[root@rhel77 ~]# tar -zcvf ztj.tar.gz ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# ls -l ztj.tar.gz 
-rw-r--r-- 1 root root 458 Jul 24 13:59 ztj.tar.gz
[root@rhel77 ~]# tar -tvf ztj.tar.gz
drwxr-xr-x root/root         0 2023-07-21 14:09 ztj/
-rwxrwxrwx root/root       173 2023-02-13 19:02 ztj/root.sh
-rwxrwxrwx root/root       179 2023-02-13 19:02 ztj/root-1.sh
-rw-r--r-- root/root         0 2023-07-20 08:33 ztj/1.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/2.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/3.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/4.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/5.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/6.txt
[root@rhel77 ~]# 

3.4.将ztj目录打包压缩成ztj.tar.bz2

命令:

tar -jcvf ztj.tar.bz2 ztj/

复制代码
[root@rhel77 ~]# tar -jcvf ztj.tar.bz2 ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# ls -l ztj.tar.bz2
-rw-r--r-- 1 root root 492 Jul 24 14:01 ztj.tar.bz2
[root@rhel77 ~]# tar -tvf ztj.tar.bz2
drwxr-xr-x root/root         0 2023-07-21 14:09 ztj/
-rwxrwxrwx root/root       173 2023-02-13 19:02 ztj/root.sh
-rwxrwxrwx root/root       179 2023-02-13 19:02 ztj/root-1.sh
-rw-r--r-- root/root         0 2023-07-20 08:33 ztj/1.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/2.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/3.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/4.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/5.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/6.txt
[root@rhel77 ~]# 

3.5.将ztj目录打包压缩成ztj.tar.Z

命令:

tar -Zcvf ztj.tar.Z ztj/

复制代码
[root@rhel77 ~]# tar -Zcvf ztj.tar.Z ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# tar -tvf ztj.tar.Z
drwxr-xr-x root/root         0 2023-07-21 14:09 ztj/
-rwxrwxrwx root/root       173 2023-02-13 19:02 ztj/root.sh
-rwxrwxrwx root/root       179 2023-02-13 19:02 ztj/root-1.sh
-rw-r--r-- root/root         0 2023-07-20 08:33 ztj/1.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/2.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/3.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/4.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/5.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/6.txt
[root@rhel77 ~]# 

3.6.将ztj目录打包压缩成ztj.tar.xz

命令:

tar -Jcvf ztj.tar.xz ztj/

复制代码
[root@rhel77 ~]# tar -Jcvf ztj.tar.xz ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# ls -l ztj.tar.xz
-rw-r--r-- 1 root root 472 Jul 24 14:06 ztj.tar.xz
[root@rhel77 ~]# tar -tvf ztj.tar.xz
drwxr-xr-x root/root         0 2023-07-21 14:09 ztj/
-rwxrwxrwx root/root       173 2023-02-13 19:02 ztj/root.sh
-rwxrwxrwx root/root       179 2023-02-13 19:02 ztj/root-1.sh
-rw-r--r-- root/root         0 2023-07-20 08:33 ztj/1.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/2.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/3.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/4.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/5.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/6.txt
[root@rhel77 ~]# 

3.7.将ztj.tar.Z文件解压至DDA目录

命令:

tar -Zxvf ztj.tar.Z -C DDA/

复制代码
[root@rhel77 ~]# tar -Zxvf ztj.tar.Z -C DDA/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# cd DDA/
[root@rhel77 DDA]# ls
ztj
[root@rhel77 DDA]# cd ztj/
[root@rhel77 ztj]# ls
1.txt  2.txt  3.txt  4.txt  5.txt  6.txt  root-1.sh  root.sh
[root@rhel77 ztj]# 

3.8.实际运维常用命令

在实际的运维过程中,常用的场景有三种:压缩,查看,解压缩。

3.8.1.文件压缩

命令:

tar -zcvf ztj.tar.gz ztj/

复制代码
[root@rhel77 ~]# tar -zcvf ztj.tar.gz ztj/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# ls -l ztj.tar.gz 
-rw-r--r-- 1 root root 458 Jul 24 13:59 ztj.tar.gz
[root@rhel77 ~]# 

3.8.2.压缩文件查看

命令:

tar -tvf ztj.tar.gz

复制代码
[root@rhel77 ~]# tar -tvf ztj.tar.gz
drwxr-xr-x root/root         0 2023-07-21 14:09 ztj/
-rwxrwxrwx root/root       173 2023-02-13 19:02 ztj/root.sh
-rwxrwxrwx root/root       179 2023-02-13 19:02 ztj/root-1.sh
-rw-r--r-- root/root         0 2023-07-20 08:33 ztj/1.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/2.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/3.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/4.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/5.txt
-rw-r--r-- root/root         0 2023-07-20 08:34 ztj/6.txt
[root@rhel77 ~]# 

3.8.3.解压文件ztj.tar.gz

命令:

tar -zxvf ztj.tar.gz

复制代码
[root@rhel77 ~]# tar -zxvf ztj.tar.gz
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# 

3.8.4.解压文件ztj.tar.gz至DDA目录

命令:

tar -zxvf ztj.tar.gz -C DDA/

复制代码
[root@rhel77 ~]# tar -zxvf ztj.tar.gz -C DDA/
ztj/
ztj/root.sh
ztj/root-1.sh
ztj/1.txt
ztj/2.txt
ztj/3.txt
ztj/4.txt
ztj/5.txt
ztj/6.txt
[root@rhel77 ~]# cd DDA/
[root@rhel77 DDA]# ls
ztj
[root@rhel77 DDA]# 
相关推荐
乌萨奇也要立志学C++17 分钟前
【Linux】进程概念(六):进程地址空间深度解析:虚拟地址与内存管理的奥秘
linux·运维
月殇_木言4 小时前
Linux 线程
linux
wangjialelele4 小时前
Linux中的线程
java·linux·jvm·c++
tritone6 小时前
我在阿贝云免费服务器上搭建RustDesk自建服务器(Self-Hosting)的真实体验【推荐】
运维·服务器
2301_800050996 小时前
DNS 服务器
linux·运维·笔记
慌糖6 小时前
自动化接口框架搭建分享-pytest第二部分
运维·自动化·pytest
Lin_Aries_04216 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
SELSL7 小时前
SQLite3的API调用实战例子
linux·数据库·c++·sqlite3·sqlite实战
洲覆7 小时前
Redis 核心数据类型:从命令、结构到实战应用
服务器·数据库·redis·缓存
岁岁种桃花儿7 小时前
详解 Kubernetes 命令:kubectl exec -it nginx -- bash 及实战场景
运维·nginx·kubernetes