news 2026/1/17 17:43:01

Linux命令-gzip命令(用于文件压缩和解压缩的常用工具)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux命令-gzip命令(用于文件压缩和解压缩的常用工具)

🧭 说明

gzip是 Linux 系统中用于文件压缩和解压缩的常用工具,它通过 Lempel-Ziv 算法(LZ77)有效减小文件大小,有助于节省存储空间和加快网络传输速度 。

下面这个表格汇总了gzip命令的一些常用选项。

选项说明
-d解压缩文件
-c将压缩或解压的结果输出到标准输出,保留原文件
-k压缩或解压后保留原始文件
-r递归处理目录下的所有文件
-v显示操作的详细信息(如压缩比)
-l列出压缩文件的详细信息(如压缩率、未压缩大小)
-t测试压缩文件的完整性
-1-9设置压缩级别(1最快压缩率最低,9最慢压缩率最高)

🛠️ 基本用法示例

gzip命令的基本语法是gzip [选项] [文件]。下面是一些典型用法:

  • 基本压缩:压缩file.txt会生成file.txt.gz默认删除原始文件。

    gzipfile.txt
  • 保留原文件压缩:使用-c选项将输出重定向,或直接使用-k选项,可以保留原始文件。

    gzip-c file.txt>file.txt.gz# 使用重定向gzip-k file.txt# 使用 -k 选项
  • 解压缩文件:使用-d选项或gunzip命令进行解压。

    gzip-d file.txt.gz# 或者gunzip file.txt.gz
  • 查看压缩信息:使用-l选项查看压缩文件的详细信息,而无需解压。

    gzip-l file.txt.gz

📂 高级用法与技巧

  • 递归压缩目录下的文件:使用-r选项,可以压缩指定目录及其子目录下的所有文件。注意,这会将目录下的每个文件单独压缩为.gz格式,而不是将整个目录打包成一个文件 。

    gzip-r my_directory/
  • 使用不同压缩级别:可以通过-1(最快)到-9(最佳压缩率)来权衡速度与压缩效果。默认级别通常是-6

    gzip-9 large_file.log# 使用最高压缩率
  • tar命令配合:由于gzip不能直接压缩文件夹,通常先使用tar命令将目录打包成一个文件(例如archive.tar),然后再用gzip压缩,生成archive.tar.gz。这一步可以合并处理:

    tar-czvf archive.tar.gz my_directory/

⚠️ 重要注意事项

  • gzip不打包目录gzip只能压缩单个文件。当对目录操作时,即使使用-r选项,它也是递归地将目录下的每个文件单独压缩,而不是生成一个统一的压缩包 。
  • 原文件的处理:默认情况下,gzip压缩和解压操作会移除原始文件。务必记得使用-k选项或在脚本中做好备份,以防数据丢失 。
  • 检查压缩文件:在解压之前,可以使用gzip -t file.txt.gz来测试压缩文件的完整性,避免因文件损坏导致问题 。

💎 总结

gzip命令是处理文件压缩的高效工具,特别适合文本文件。掌握它与tar的配合使用,能更好地应对目录压缩场景。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/15 6:35:01

iOS动态文本动画技术演进:从LTMorphingLabel看体验创新

iOS动态文本动画技术演进:从LTMorphingLabel看体验创新 【免费下载链接】LTMorphingLabel [EXPERIMENTAL] Graceful morphing effects for UILabel written in Swift. 项目地址: https://gitcode.com/gh_mirrors/lt/LTMorphingLabel 你是否注意到&#xff0c…

作者头像 李华
网站建设 2026/1/14 18:54:45

AI智能棋盘集成ASR5970实现远场拾音功能

AI智能棋盘集成ASR5970实现远场拾音功能在一间宽敞的教室里,一位老师站在三米外的讲台上轻声说:“开始对局。”面前的AI智能棋盘随即亮起指示灯,自动进入准备状态——没有唤醒词,无需联网,响应几乎即时发生。这样的场景…

作者头像 李华
网站建设 2026/1/15 12:08:27

Open-AutoGLM命令行指令全图解(从入门到精通仅需这一篇)

第一章:Open-AutoGLM命令行模式常用指令概览Open-AutoGLM 提供了强大的命令行接口,支持模型推理、参数配置、任务执行与日志监控等多种功能。用户可通过终端快速调用核心能力,适用于自动化脚本与批量处理场景。基础启动指令 启动 Open-AutoGL…

作者头像 李华
网站建设 2026/1/15 11:03:28

基于Springboot+Vue的新闻发布会管理系统(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦新闻发布会筹备流程繁琐、参会人员管理混乱、信息同步不及时、会后数据复盘低效的痛点,设计实现基于 SpringBootVue 的新闻发布会管理系统。系统后端以 SpringBoot 为核心框架,整合 MyBatis-Plus 实现 MySQL 数据库高效交互&#xff0…

作者头像 李华
网站建设 2026/1/15 12:08:22

JTAppleCalendar:打造iOS平台高度定制化日历组件的终极选择

JTAppleCalendar:打造iOS平台高度定制化日历组件的终极选择 【免费下载链接】JTAppleCalendar The Unofficial Apple iOS Swift Calendar View. Swift calendar Library. iOS calendar Control. 100% Customizable 项目地址: https://gitcode.com/gh_mirrors/jt/J…

作者头像 李华
网站建设 2026/1/17 23:31:20

基于Springboot的火车售票系统设计与实现(源码+lw+部署文档+讲解等)

课题介绍 当前铁路客运售票仍面临线下流程繁琐、票源实时管控难度大、退改签效率低等问题,传统人工售票模式不仅增加铁路部门运营成本,也易出现票源信息不对称、黄牛囤票等问题,影响乘客出行体验与铁路运力调配效率。基于此,开发基…

作者头像 李华