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
相关推荐
浩浩测试一下3 小时前
Linux 底层知识点 1
linux·运维·服务器
Escalating_xu4 小时前
【Linux 网络编程】TCP 跨平台实战:用 Windows 客户端访问 Linux 服务器
linux·服务器·网络
忆挽篱笙歌5 小时前
环境变量,本地变量
linux·运维·服务器
吹什么轩7 小时前
linux系统复习:僵尸进程与孤儿进程
linux·运维·php
殷忆枫8 小时前
告别依赖地狱!在 Ubuntu 上用 Docker 极速部署 Home Assistant 与 MQTT,并接入 Siri 与嵌入式 C 终端
linux·ubuntu·docker
第404号工位8 小时前
手机到底有没有偷听我们?我抓包了 72 小时,抓到了真凶
linux·人工智能·架构
字节跳动开源8 小时前
ByteDance 2026 上半年 Linux 内核贡献回顾
linux·开源
小此方8 小时前
Linux网络(二十八):从NAT转换到正反向代理:图解内网通信、NAPT端口映射
linux·运维·网络
刚入门的大一新生8 小时前
Linux-进程池
linux·运维·服务器
鱼很腾apoc9 小时前
【MySQL】第4期 用户管理与 C 语言连接编程详解
linux·服务器·c语言·mysql·connector/c