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]# 
相关推荐
gameatp3 分钟前
从 Windows 到 Linux 服务器的全自动部署教程(免密登录 + 压缩 + 上传 + 启动)
linux·服务器·windows
一匹电信狗4 分钟前
【C++】异常详解(万字解读)
服务器·c++·算法·leetcode·小程序·stl·visual studio
穷人小水滴8 分钟前
在 windows 运行 flatpak 应用 (WSL)
linux·windows·ubuntu
一只拉古37 分钟前
DevOps 的 Linux 基础(第一部分)
linux·自动化运维·devops
mit6.8241 小时前
ubuntu远程桌面很卡怎么解决?
linux·ubuntu·php
飞鸟真人1 小时前
linux下用c++11写一个UDP回显程序
linux·udp·即时通信
Python私教2 小时前
Docker in Test:用一次性的真实环境,终结“测试永远跑不通”魔咒
运维·docker·容器
朱颜辞镜花辞树‎2 小时前
关于 Linux 内存管理
linux
张3蜂2 小时前
深度解读 Browser-Use:让 AI 驱动浏览器自动化成为可能
运维·人工智能·自动化
reduceanxiety2 小时前
第四章 Linux实用操作
linux·运维·服务器