Linux gzip 压缩/解压 详解[通俗易懂]

gzip是linux中常见的压缩/解压工具,最常见的使用对象是*.gz格式的文件,这里简单介绍下它最常见的用法,GZIP(1)GeneralCommandsManualGZIP(1)NAMEgzip,gunzip,zcat-compressorexpandfilesSYNOPSISgzip[-acdfhklLnNrtvV19][–rsyncable][-Ssuffix][name…]gunzip[-acfh…

大家好,又见面了,我是你们的朋友全栈君。

gzip 是linux中常见的压缩/解压工具,最常见的使用对象是*.gz格式的文件,这里简单介绍下它最常见的用法,

GZIP(1) General Commands Manual GZIP(1)

NAME
     gzip, gunzip, zcat – compress or expand files

SYNOPSIS
     gzip [ -acdfhklLnNrtvV19 ] [–rsyncable] [-S suffix] [ name … ]
     gunzip [ -acfhklLnNrtvV ] [-S suffix] [ name … ]
     zcat [ -fhLV ] [ name … ]

OPTIONS
     -c –stdout –to-stdout 结果写到标准输出,原文件保持不变
     -d –decompress –uncompress 解压
     -k –keep 压缩或者解压过程中,保留原文件
     -r –recursive
     -t –test 检查压缩文件的完整性
     -v –verbose 显示每个文件的名子和压缩率
     -# –fast –best 取值从-1(最快)到-9(最好),默认是-6

示例1,压缩文件
原文件名为file1.txt,压缩后原文件消失,压缩后文件名为file1.txt.gz
root@ubuntu:/tmp# ls -l file1.*
-rw-r–r– 1 root root 12383865 Aug 21 08:08 file1.txt
root@ubuntu:/tmp# gzip file1.txt
root@ubuntu:/tmp# ls -l file1.*
-rw-r–r– 1 root root 134416 Aug 21 08:08 file1.txt.gz

示例2,解压文件
root@ubuntu:/tmp# gzip -d file1.txt.gz
root@ubuntu:/tmp# ls -lh file1.*
-rw-r–r– 1 root root 12M Aug 21 08:08 file1.txt

示例3,压缩的时候,显示压缩率
root@ubuntu:/tmp# gzip -v file1.txt
file1.txt: 98.9% — replaced with file1.txt.gz

示例4,一条命令压缩多个文件,压缩之后,是各自分开的:
root@ubuntu:/tmp# gzip file1.txt file2.txt
root@ubuntu:/tmp# ls -l
total 1348
-rw-r–r– 1 root root 134416 Aug 21 08:08 file1.txt.gz
-rw-r–r– 1 root root 392 Aug 21 08:15 file2.txt.gz

示例5,压缩过程中,保留原文件
root@ubuntu:/tmp# gzip -k file1.txt
root@ubuntu:/tmp# ls file1.*
file1.txt file1.txt.gz

示例6,压缩到标准输出中
可以连接两个文件
root@ubuntu:/tmp# cat file1.txt file2.txt | gzip > foo.gz
或者
root@ubuntu:/tmp# gzip -c file1.txt file2.txt > foo.gz
======================================

gzip
压缩后的格式为:*.gz

这种压缩方式不能保存原文件;且不能压缩目录

命令举例:
#压缩
[root@localhost tmp]# gzip buodo
[root@localhost tmp]# ls
buodo.gz
#解压
[root@localhost tmp]# gunzip buodo.gz 
[root@localhost tmp]# ls
buodo

tar
命令选项:
    -z(gzip)      用gzip来压缩/解压缩文件
    -j(bzip2)     用bzip2来压缩/解压缩文件
    -v(verbose)   详细报告tar处理的文件信息
    -c(create)    创建新的档案文件
    -x(extract)   解压缩文件或目录
    -f(file)      使用档案文件或设备,这个选项通常是必选的。

命令举例:
#压缩
[root@localhost tmp]# tar -zvcf buodo.tar.gz buodo
[root@localhost tmp]# tar -jvcf buodo.tar.bz2 buodo 

#解压
[root@localhost tmp]# tar -zvxf buodo.tar.gz 
[root@localhost tmp]# tar -jvxf buodo.tar.bz2

zip
与gzip相比:1)可以压缩目录; 2)可以保留原文件;

选项:

    -r(recursive)    递归压缩目录内的所有文件和目录

命令举例:
#压缩和解压文件
[root@localhost tmp]# zip boduo.zip boduo
[root@localhost tmp]# unzip boduo.zip

#压缩和解压目录
[root@localhost tmp]# zip -r Demo.zip Demo
  adding: Demo/ (stored 0%)
  adding: Demo/Test2/ (stored 0%)
  adding: Demo/Test1/ (stored 0%)
  adding: Demo/Test1/test4 (stored 0%)
  adding: Demo/test3 (stored 0%)
[root@localhost tmp]# unzip Demo.zip 
Archive:  Demo.zip
   creating: Demo/
   creating: Demo/Test2/
   creating: Demo/Test1/
 extracting: Demo/Test1/test4        
 extracting: Demo/test3  

bzip2
压缩后的格式:.bz2
参数
    -k    产生压缩文件后保留原文件

命令举例
#压缩
[root@localhost tmp]# bzip2 boduo
[root@localhost tmp]# bzip2 -k boduo

#解压
[root@localhost tmp]# bunzip2 boduo.bz2 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125065.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • oj在计算机领域中指什么,【计算机专业论文】计算机专业教学中OJ平台的应用(共2762字)…

    oj在计算机领域中指什么,【计算机专业论文】计算机专业教学中OJ平台的应用(共2762字)…摘要:传统的教学模式对计算机专业学生的能力培养存在着诸多问题,而OJ(OnlineJudge在线检测程序源代码)平台为计算机教学提供了新的思路,因为OJ平台在学生日常训练方面有一套行之有效的机制,所以对学生的学习兴趣、分析解决问题能力、创新能力等方面的培养都起到了积极的推动作用,OJ平台还可以对学生实践能力进行最直接的考核,因此将OJ平台引入计算机专业教学,可实现以平台促教学,以平台促教改。关键词…

    2022年6月16日
    27
  • js估算一篇文章的阅读时长

    js估算一篇文章的阅读时长

    2021年6月6日
    94
  • Heartbleed第二篇:Heartbleed漏洞剖析

    Heartbleed第二篇:Heartbleed漏洞剖析Heartbleed漏洞剖析

    2022年7月15日
    23
  • 最简单的三极管音频放大电路

    最简单的三极管音频放大电路最简单的三极管音频放大电路最简单的三极管音频放大电路 调节R1大小,使在最大输出时信号不失真即可,减小R可输出更大的功率。如果有万用表,可将C极电压调为电源电压的1/2左右。        图一固定偏置,电源电压对偏置电流影响很大 基本的共发射极电路   require.async([‘wkcommon:widget/ui

    2022年6月5日
    80
  • nextSibling 和nextElementSibling

    nextSibling 和nextElementSibling在使用DOM过程中发现一个问题:使用nextSibling属性返回指定节点之后紧跟的节点,在相同的树层级中。被返回的节点以Node对象返回。nextSibling属性与nextElement

    2022年7月4日
    19
  • 什么是国际邮箱地址,如何登录域名邮箱?「建议收藏」

    什么是国际邮箱地址,如何登录域名邮箱?「建议收藏」互联网的高速发展,信息通讯的重要,邮箱已然变成不可或缺的通讯工具,TOM企业邮箱作为国内重要的邮箱厂商,一直为广大用户提供系统的邮箱服务。国际邮箱地址与国内都是同等格式,账号名称@域名组成通用的国际邮箱地址,下面给大家讲解如何注册域名邮箱并登录使用。如何注册域名邮箱?首先讲下域名邮箱的特点,域名邮箱是指用公司或者个人注册的域名,用来开通邮箱时使用的域名,其具有个性化、标志化的特点,在商务往来中更加突显正规性。注册完成将域名解析到邮箱服务商,开通的邮箱就能使用了。登录使用域名邮箱邮箱开通后,使用邮箱

    2022年9月24日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号