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]#