Linux压缩文件常用操作的命令大全

在Linux系统中,压缩文件操作是一个常见的任务,可以通过多种命令来实现。 本篇博文将介绍一些常用的Linux压缩文件命令及其基本用法。

1、tar命令

tar是Tape Archive的缩写,是 Linux 和 Unix 系统中用于归档(打包)文件的强大工具。它可以将多个文件和目录合并为一个文件,方便备份、传输或存储。同时,通过与其他压缩工具(如 gzip, bzip2, xz 等)结合使用,tar 也可以实现文件的压缩,从而节省存储空间和网络带宽。

示例 假设有一个名为 myfiles 的目录,想要将其压缩为一个名为 myfiles.tar.gz 的归档文件,并在之后将其解压到 /tmp/extracted 目录中(假设该目录已存在):

# 压缩
tar -czvf myfiles.tar.gz myfiles/  
# 解压
tar -xzvf myfiles.tar.gz -C /tmp/extracted

这样,myfiles 目录下的所有内容都将被压缩到 myfiles.tar.gz 文件中,并且之后可以从该归档文件中解压到 /tmp/extracted 目录下。

选项意义如下:

  • -c:创建一个新的归档文件。
  • -z:通过 gzip 进行压缩或解压缩。
  • -v:在处理文件时显示详细信息(verbose模式)。
  • -f:指定归档文件的名称。注意 -f 选项应该放在所有其他选项之后,紧跟归档文件名
  • -C:指定解压文件的目标目录。如果目录不存在,则 tar 命令可能会失败或尝试创建该目录(取决于具体的 tar 实现和权限设置)。

2、gzip命令

gzip是一个广泛使用的压缩程序,用于压缩文件以节省磁盘空间。使用gzip命令压缩文件时,默认情况下会删除原文件,但会生成一个以.gz为后缀的压缩文件。这一点对于初次使用者来说可能需要注意,以避免意外丢失原始文件。

# 压缩指定的文件,并将原文件替换为一个具有相同文件名但扩展名为.gz的压缩文件。原文件在压缩后会被删除
gzip 文件名
# 使用gzip -d命令或者更常用的gunzip命令,因为gunzip是专门用于解压.gz文件的工具
gzip -d 文件名.gz
gunzip 压缩后的文件.gz
# 如果希望在压缩文件时保留原文件,可以使用gzip命令的-c(或--stdout)选项,将压缩数据输出到标准输出(stdout),然后可以使用重定向将其保存到另一个文件中
gzip -c 文件名 > 压缩后的文件名.gz

3、 bzip2命令

bzip2是另一种压缩程序,通常提供比gzip更高的压缩率。但相应地,压缩和解压的速度可能会稍慢一些。 :fa-hand-o-right: :fa-hand-o-right: opengauss安装压缩使用此工具。

# 压缩文件,并删除原始文件  
bzip2 要压缩的文件

# 压缩文件,保留原始文件  
bzip2 -k 要压缩的文件

# 使用 bzip2 解压文件  
bzip2 -d 压缩后的文件.bz2  

# 或者使用 bunzip2 解压文件  
bunzip2 压缩后的文件.bz2

4、zip命令

zip是一个流行的压缩程序,它支持跨平台(如 Windows、Linux、macOS 等)使用,并且能够将文件或目录压缩成一个 .zip 格式的压缩包。 在使用 zip 和 unzip 命令时,请确保足够的权限来读取压缩包和写入目标目录。

# 压缩文件或目录:
zip 压缩包名称.zip 要压缩的文件或目录
# 递归压缩目录:
zip -r 压缩包名称.zip 要压缩的目录
# 解压文件:
unzip 压缩包名称.zip
# 解压到指定目录:
unzip 压缩包名称.zip -d 目标目录

5、xz命令

xz是一个提供高压缩率的压缩程序。非常适合用于需要最大限度减小文件大小的场景。它的压缩率通常比 gzip 和 bzip2 都要高,但相应地,压缩和解压的速度可能会稍慢。

# 压缩文件,并删除原始文件  
xz 要压缩的文件

# 压缩文件,保留原始文件
xz -k 要压缩的文件

# 使用 xz 解压文件
xz -d 压缩后的文件.xz

# 或者使用 unxz 解压文件
unxz 压缩后的文件.xz

6、rar命令

rar是Roshal Archive的缩写,rar命令是用于处理RAR(Roshal Archive)格式文件的压缩和解压工具。RAR格式是一种流行的文件压缩和归档格式,它支持较高的压缩率和多种压缩选项。 在Linux系统中,rar命令可能需要手动安装,因为并非所有Linux发行版都默认包含它。

# 压缩文件或目录
rar a 压缩包名称.rar 要压缩的文件或目录
  • -a 选项表示添加文件到压缩包。如果压缩包不存在,则会创建新的压缩包;如果已存在,则会将指定文件或目录添加到该压缩包中。
  • 可以使用 -r 参数来递归地添加文件夹中的所有文件和子文件夹。
# 解压RAR文件
rar x 压缩包名称.rar
rar x 压缩包名称.rar -o+ -d /path/to/extract/
  • -x 选项通常与解压命令一起使用,但它主要是用于提取文件时保持文件的完整路径。然而,在解压RAR文件时,x 命令通常已经足够,它会自动解压到当前目录或指定的目录(如果使用 -o+ -d 参数)。
  • 如果要解压到特定目录,可以使用 -o+ -d 参数,但请注意,-x 通常不是用于指定解压路径的,而是用于控制解压时文件的路径处理方式。

7、汇总

命令描述压缩文件命令解压文件命令注意事项
tar打包和压缩文件tar -czvf 压缩包名称.tar.gz 要压缩的文件或目录tar -xzvf 压缩包名称.tar.gz -C 解压目录tar本身只打包,压缩需配合gzip等使用;-C指定解压目录
gzip压缩文件以节省空间gzip 要压缩的文件gzip -d 压缩后的文件 或 gunzip 压缩后的文件默认删除原文件,生成.gz后缀文件
bzip2提供比gzip更高的压缩率bzip2 要压缩的文件bzip2 -d 压缩后的文件 或 bunzip2 压缩后的文件默认删除原文件,生成.bz2后缀文件
zip跨平台压缩程序zip 压缩包名称.zip 要压缩的文件或目录(使用-r递归)unzip 压缩包名称.zip支持递归压缩目录
xz提供高压缩率xz 要压缩的文件xz -d 压缩后的文件 或 unxz 压缩后的文件默认删除原文件,生成.xz后缀文件
rarRoshal Archive压缩格式rar a 压缩包名称.rar 要压缩的文件或目录(使用-r递归)rar x 压缩包名称.rar可能需要预先安装rar命令;支持递归压缩

注意事项

  • 在进行压缩和解压缩操作时,需要注意参数的选择和使用,以免造成不必要的错误和数据丢失。
  • 不同的压缩格式的压缩率和压缩速度都有所不同,需要根据实际情况选择最合适的格式进行压缩。
  • 对于一些特殊的压缩文件格式,例如ISO文件和IMG文件,可以使用mount命令进行挂载,然后直接访问其中的文件。

评论

评论列表

暂无评论

文章目录

    查看评论