温馨提示×

CentOS文件管理怎样压缩解压

小樊
67
2025-09-01 18:18:00
栏目: 智能运维

CentOS文件压缩与解压常用命令及用法

在CentOS系统中,文件压缩与解压是日常运维和文件管理的核心操作之一。以下是针对不同压缩格式的详细命令及注意事项,覆盖常见场景:

一、常用压缩命令

1. tar(打包+压缩,最常用)

tar是CentOS中最核心的打包工具,可与gzip、bzip2、xz等压缩算法结合使用,生成.tar.gz(gzip压缩,高速度)、.tar.bz2(bzip2压缩,高压缩率)、.tar.xz(xz压缩,最高压缩率)等格式。

  • 打包并压缩目录/文件
    tar -czvf archive.tar.gz directory/ # 压缩为.tar.gz(gzip) tar -cjvf archive.tar.bz2 directory/ # 压缩为.tar.bz2(bzip2) tar -cJvf archive.tar.xz directory/ # 压缩为.tar.xz(xz) 
    参数说明:-c(创建归档)、-z/-j/-J(指定压缩算法)、-v(显示进度)、-f(指定文件名)。
  • 仅打包(不压缩)
    tar -cvf archive.tar directory/ # 生成.tar文件(未压缩) 

2. gzip/gunzip(单文件压缩/解压)

gzip适用于快速压缩单个文件,压缩后原文件会被删除,生成.gz后缀文件。

  • 压缩文件
    gzip filename.txt # 生成filename.txt.gz 
  • 解压文件
    gunzip filename.txt.gz # 解压为filename.txt 

3. bzip2/bunzip2(单文件高压缩率压缩/解压)

bzip2比gzip压缩率更高,但速度较慢,适用于需要节省空间的场景,生成.bz2后缀文件。

  • 压缩文件
    bzip2 filename.txt # 生成filename.txt.bz2 
  • 解压文件
    bunzip2 filename.txt.bz2 # 解压为filename.txt 

4. xz/unxz(单文件最高压缩率压缩/解压)

xz是CentOS中压缩率最高的工具,适合超大文件,生成.xz后缀文件,但压缩速度最慢。

  • 压缩文件
    xz filename.txt # 生成filename.txt.xz 
  • 解压文件
    unxz filename.txt.xz # 解压为filename.txt 

5. zip/unzip(跨平台压缩/解压)

zip格式兼容Windows、Mac等系统,是跨平台常用的压缩格式,生成.zip后缀文件。

  • 安装zip/unzip(若未安装)
    sudo yum install -y zip unzip # CentOS 7及以下 sudo dnf install -y zip unzip # CentOS 8及以上 
  • 压缩文件/目录
    zip -r archive.zip directory/ # 递归压缩目录 zip archive.zip file1.txt file2.txt # 压缩多个文件 
  • 解压文件
    unzip archive.zip # 解压到当前目录 unzip -d /target/dir archive.zip # 解压到指定目录 

6. rar(需手动安装,跨平台)

rar格式在Windows中常见,CentOS默认未安装,需手动安装工具包。

  • 安装unrar(解压工具)
    sudo yum install -y epel-release # 启用EPEL仓库 sudo yum install -y unrar # 安装unrar 
  • 解压rar文件
    unrar x archive.rar # 解压并保持目录结构 unrar x archive.rar /target/dir # 解压到指定目录 

二、常用解压命令

解压命令需根据压缩格式选择,以下是常见格式的解压方法:

  • 解压.tar.gz/.tgz
    tar -xzvf archive.tar.gz 
  • 解压.tar.bz2
    tar -xjvf archive.tar.bz2 
  • 解压.tar.xz
    tar -xJvf archive.tar.xz 
  • 解压.zip
    unzip archive.zip 
  • 解压.rar
    unrar x archive.rar 
  • 解压.tar(仅解包)
    tar -xvf archive.tar 

三、高级用法

1. 解压到指定目录

使用-C参数指定目标目录(适用于tar、unzip):

tar -xzvf archive.tar.gz -C /opt/backup # 解压到/opt/backup unzip archive.zip -d /opt/documents # 解压到/opt/documents 

2. 查看压缩包内容(不解压)

  • tar包
    tar -tvf archive.tar.gz # 查看.tar.gz内容 
  • zip包
    unzip -l archive.zip # 列出.zip内容 
  • rar包
    unrar l archive.rar # 列出.rar内容 

3. 测试压缩包完整性

  • tar包
    tar -tvf archive.tar.gz # 测试.tar.gz完整性 
  • zip包
    unzip -t archive.zip # 测试.zip完整性 

四、注意事项

  1. 权限问题:若压缩/解压涉及系统文件或无权限目录,需在命令前加sudo(如sudo tar -xzvf archive.tar.gz -C /usr/local)。
  2. 压缩率对比xz > bzip2 > gzip,但压缩速度相反(gzip最快,xz最慢)。
  3. 跨平台兼容性:若需在Windows系统解压,优先选择zip格式;若需Linux系统解压,优先选择tar.gz格式。
  4. 原文件保留gzip/bzip2/xz压缩后会删除原文件,若需保留原文件,可使用-k参数(如gzip -k filename.txt)。

通过以上命令,可满足CentOS系统中绝大多数文件压缩与解压需求。

0