CentOS Linux教程(8)--使用tar压缩解压文件

文章目录

  • [1. 概念介绍](#1. 概念介绍)
  • [2. 打包](#2. 打包)
    • [2.1 打包多个文件](#2.1 打包多个文件)
    • [2.2 打包指定类型文件](#2.2 打包指定类型文件)
    • [2.3 打包目录](#2.3 打包目录)
  • [3. 查看tar包中的文件](#3. 查看tar包中的文件)
  • [4. 解包](#4. 解包)
  • [5. 压缩](#5. 压缩)
  • [6. 解压](#6. 解压)

1. 概念介绍

大家比较熟windows,常见压缩格式zip、.7z、.rar

linux下比较常见压缩格式为.bz2、.Z、.gz、.zip、.xz

我们可以使用tar压缩、解压文件,需要注意的是,tar命令是先打包,再压缩。

2. 打包

2.1 打包多个文件

可以打包若干个文件:

shell 复制代码
[chen@localhost test1]$ ls
a.txt  b.txt
[chen@localhost test1]$ tar -cf all.tar a.txt b.txt
[chen@localhost test1]$ ls
all.tar  a.txt  b.txt

上面的例子,tar是打包命令,-cf是命令参数,其中c表示创建,f表示命名。后面的all.tar是打包后的文件名,再后面是被打包的文件名。

2.2 打包指定类型文件

可以使用*通配符,打包指定类型文件,例如:

shell 复制代码
a.txt  b.txt
[chen@localhost test1]$ tar -cf all.tar *.txt
[chen@localhost test1]$ ls
all.tar  a.txt  b.txt

2.3 打包目录

也可以打包目录,就当目录是文件就行:

shell 复制代码
[chen@localhost ~]$ tar -cf test1.tar test1
[chen@localhost ~]$ ls
公共  模板  视频  图片  文档  下载  音乐  桌面  temp  test1  test1.tar  test2

3. 查看tar包中的文件

可以使用tar -tf查看目录中文件,其中参数t表示查看。

shell 复制代码
[chen@localhost ~]$ tar -tf test1.tar
test1/
test1/a.txt
test1/b.txt

4. 解包

可以把打包的文件,再解开,命令为tar -xf,x参数代表解开。

shell 复制代码
[chen@localhost ~]$ ls
公共  模板  视频  图片  文档  下载  音乐  桌面  temp  test1.tar  test2
[chen@localhost ~]$ tar -xf test1.tar
[chen@localhost ~]$ ls
公共  模板  视频  图片  文档  下载  音乐  桌面  temp  test1  test1.tar  test2

5. 压缩

之前的tar -cf只是打包,并未压缩,如果压缩的话,需要使用tar -czf命令:

shell 复制代码
[chen@localhost test1]$ ls
all.tar  a.txt  b.txt
[chen@localhost test1]$ tar -czf all.tar.gz all.tar
[chen@localhost test1]$ ls
all.tar  all.tar.gz  a.txt  b.txt

注意,-czf中的z,表示,表示压缩为.gz文件,其他压缩格式参数为:

  • tar -czf,压缩为.gz文件
  • tar -czf,压缩为.bz2文件
  • tar -cZf,压缩为.Z文件

6. 解压

使用如下命令解压文件,x表示解压。

  • tar -zxf,压缩为.gz文件
  • tar -zxf,压缩为.bz2文件
  • tar -Zxf,压缩为.Z文件

实例:

shell 复制代码
[chen@localhost test1]$ ls
all.tar.gz  a.txt  b.txt
[chen@localhost test1]$ tar -zxf all.tar.gz
[chen@localhost test1]$ ls
all.tar  all.tar.gz  a.txt  b.txt
相关推荐
拾贰_C29 分钟前
【python | installation 】python 安装 | Windows | 命令使用
linux·数据库·ubuntu
无限进步_37 分钟前
Linux进程终止——退出码、exit与_exit
linux·运维·服务器
编程大师哥38 分钟前
最高效的 IO 并发方案
linux·网络·python
炘爚1 小时前
phase1:基础框架——编译 + MySQL + 登录/注册
linux·c++
小蜗子1 小时前
Windows 11 + RTX 5060 + WSL2 Ubuntu + NVIDIA DGL 容器
linux·运维·ubuntu
着迷不白2 小时前
八、shell脚本
linux·运维
爱装代码的小瓶子2 小时前
3. 设计buffer模块
linux·服务器·开发语言·c++·php
流浪0012 小时前
Linux系统篇(四):一文吃透 Linux 虚拟地址空间:从页表映射到内核结构体全链路拆解
linux·运维·服务器
Jacob程序员2 小时前
WebSSH技术实现全解析
linux·运维·服务器·websocket
暗冰ཏོ2 小时前
运维岗位完整学习指南:从 Linux 基础到 DevOps / SRE 实战
linux·运维·服务器·ubuntu·运维开发·devops