首页 > 系统相关 >Linux:tar、压缩、解压

Linux:tar、压缩、解压

时间:2023-08-23 09:56:31浏览次数:36  
标签:解压 tmp tar dmtsai 压缩 xz Linux services study

压缩文件扩展名:

  • .tar:tar程序打包的数据,没经过压缩

  • .tar.gz:tar程序打包,并经过gzip压缩

  • .tgz

  • .gz:gzip程序压缩的文件

  • .Z:Compress程序压缩的文件

  • .bz2:bzip2程序压缩的文件

  • .xz:xz程序压缩的文件

Linux上最常见的压缩指令为gzip、bzip2、最新的xz;Windows上最常用的是zip。

tar则是打包

1、tar:解压缩

用法:tar [主选项] [次选项] 文件

常用:tar -xzvf xxx.tar.gz

主选项:必须且只能选择一项

  • -x:解压缩
  • -t:列出tar
  • -c:压缩

次选项:

  • -z:用gzip压缩或解压,用于.tar.gz和.tgz文件
  • -j:用bzip2压缩或解压,用于.tar.bz2文件
  • -v:压缩过程中显示文件
  • -f:要解压的文件,后接文件路径或文件名,不能再接其它选项,这决定了选项如果连续写f只能放在最后,例如-xzvf xxx.tar.gz
  • -p:使用源文件的各种属性
  • -C:解压缩到指定目录下 

2、gzip:压缩

zcat/zmore/zless/zgrep:解压缩

用法:

  • gzip [-cdtv#] 文档名

  • zcat 档名.gz

说明

  • 当使用gzip压缩时,在预设状态下原本的文件会被压缩为.gz档名源文件不再存在

选项

选项

说明

c 将压缩数据输出到屏幕,可通过数据流重导向来处理;
d 解压缩的参数;
t 检验压缩文件的一致性,看看文件有无错误
v 压缩比
#

数字,代表压缩等级:

-1最快,但压缩比最差;

-9最慢,压缩比最好;

-6 默认。

例子

①gzip、找到/tec下(不含子目录)容量最大的文件,并将它复制到/tmp,然后以gzip压缩

[dmtsai@study ~]$ ls -ldSr /etc/* # 忘记选项意义?请自行 man 啰!
.....(前面省略).....
-rw-r--r--. 1 root root 25213 Jun 10 2014 /etc/dnsmasq.conf
-rw-r--r--. 1 root root 69768 May 4 17:55 /etc/ld.so.cache
-rw-r--r--. 1 root root 670293 Jun 7 2013 /etc/services
[dmtsai@study ~]$ cd /tmp
[dmtsai@study tmp]$ cp /etc/services .
[dmtsai@study tmp]$ gzip -v services
services: 79.7% -- replaced with services.gz
[dmtsai@study tmp]$ ll /etc/services /tmp/services*
-rw-r--r--. 1 root root 670293 Jun 7 2013 /etc/services
-rw-r--r--. 1 dmtsai dmtsai 136088 Jun 30 18:40 /tmp/services.gz

3、bzip:压缩

bzcat/bzmore/bzless/bzgrep:解压缩

用法

  • bzip2 [-cdkzv#] 档名

  • bzcat 档名.bz2

选项

与gzip的选项类似

选项

说明

c 输出到屏幕
d 解压缩的参数
k 保留原文件
z 压缩的参数
v 显示压缩比等信息
# 计算压缩比

说明

  • 用于取代gzip,bzip的压缩比更高
  • 选项都和gzip一样,只是扩展名从.gz变为了.bz2

例子

范例一:将刚刚 gzip 范例留下来的 /tmp/services 以 bzip2 压缩
[dmtsai@study tmp]$ bzip2 -v services
services: 5.409:1, 1.479 bits/byte, 81.51% saved, 670293 in, 123932 out.
[dmtsai@study tmp]$ ls -l services*
-rw-r--r--. 1 dmtsai dmtsai 123932 Jun 30 18:40 services.bz2
-rw-rw-r--. 1 dmtsai dmtsai 135489 Jun 30 18:46 services.gz
# 此时 services 会变成 services.bz2 之外,你也可以发现 bzip2 的压缩比要较 gzip 好喔!!
# 压缩率由 gzip 的 79% 提升到 bzip2 的 81% 哩!
范例二:将范例一的文件内容读出来!
[dmtsai@study tmp]$ bzcat services.bz2
范例三:将范例一的文件解压缩
[dmtsai@study tmp]$ bzip2 -d services.bz2
范例四:将范例三解开的 services 用最佳的压缩比压缩,并保留原本的文件
[dmtsai@study tmp]$ bzip2 -9 -c services > services.bz2

4、xz:压缩

xzcat/xzmore/xzless/xzgrep:解压缩

用法:xz [-dtlkc#] 档名

xcate 档名.xz

选项:同bzip

说明:压缩比比bzip2更高,用法也相同。

例子

范例一:将刚刚由 bzip2 所遗留下来的 /tmp/services 透过 xz 来压缩!
[dmtsai@study tmp]$ xz -v services
services (1/1)
100 % 97.3 KiB / 654.6 KiB = 0.149
[dmtsai@study tmp]$ ls -l services*
-rw-rw-r--. 1 dmtsai dmtsai 123932 Jun 30 19:09 services.bz2
-rw-rw-r--. 1 dmtsai dmtsai 135489 Jun 30 18:46 services.gz
-rw-r--r--. 1 dmtsai dmtsai 99608 Jun 30 18:40 services.xz
# 各位观众!看到没有啊!!容量又进一步下降的更多耶!好棒的压缩比!
范例二:列出这个压缩文件的信息,然后读出这个压缩文件的内容
[dmtsai@study tmp]$ xz -l services.xz
Strms Blocks Compressed Uncompressed Ratio Check Filename
1 1 97.3 KiB 654.6 KiB 0.149 CRC64 services.xz
# 竟然可以列出这个文件的压缩前后的容量,真是太人性化了!这样观察就方便多了!
[dmtsai@study tmp]$ xzcat services.xz
范例三:将他解压缩吧!
[dmtsai@study tmp]$ xz -d services.xz
范例四:保留原文件的档名,并且建立压缩文件!
[dmtsai@study tmp]$ xz -k services

 

 

标签:解压,tmp,tar,dmtsai,压缩,xz,Linux,services,study
From: https://www.cnblogs.com/ShineLeBlog/p/17650321.html

相关文章

  • ubuntu/linux 好用的截图工具 搜狗输入法自带的截图快捷键,自己觉得不方便的话,修改为
    公司要求使用ubuntu开发,在安装完必要得开发工具之后,按照我在windows平台的习惯,就准备安装一个好用的截图工具了,我比较推荐的是snipaste([https://zh.snipaste.com/download.html)]),同时QQ,微信的自带快捷键也十分好用。以下分别是windowsQQ微信的截图方式,非常好用。好的,不墨......
  • linux centos7安装微信开发者工具
    要在CentOS7.6上安装图形化界面,可以按照以下步骤进行操作:#1.更新系统:sudoyumupdate#2.安装GNOME桌面环境:sudoyumgroupinstall"GNOMEDesktop"-y#3.配置系统默认启动为图形模式:sudosystemctlset-defaultgraphical.target#4.安装图形化界面的依赖包:s......
  • 英伟达™(NVIDIA®)535.98 Linux 图形驱动程序发布
    英伟达™(NVIDIA®)公司近日发布了适用于 Linux、FreeBSD和Solaris系统的NVIDIA535.98图形驱动程序,作为其生产分支的维护更新,解决了各种错误和问题。在英伟达™(NVIDIA®)535.86.05版本发布仅三周后,新版驱动程序就解决了多个Bug,包括在虚拟终端和X之间切换时使用某......
  • 什么是 SAP CDS view 的 supplementary filter
    SAPCDS视图是一种建模工具,用于在SAPS/4HANA系统中定义数据模型和视图,以便更轻松地访问和处理数据。"Supplementaryfilter"是CDS视图的一个重要概念,它允许您在CDS视图上应用额外的过滤条件,以动态地限制视图返回的数据。本文将详细介绍"supplementaryfilter"的背景、用途和示例......
  • 解决 Linux 最小版本 yum 无法使用的问题
    1、首先找到ifcfg-ens33文件此文件的目录在/etc/sysconfig/network-scripts目录下可以使用以下命令:    cd/etc/sysconfig/network-scripts/;2、使用VI或者vim打开ifcfg-ens33文件找到ifcfg-ens33文件然后打开可以使用以下命令:    viifcfg-ens333、修......
  • Linux运维工程师面试题(1)
    Linux运维工程师面试题(1)祝各位小伙伴们早日找到自己心仪的工作。持续学习才不会被淘汰。地球不爆炸,我们不放假。机会总是留给有有准备的人的。加油,打工人!1别名、内部命令、外部命令的执行顺序命令执行寻找顺序:别名>内部命令>外部命令;即先寻找是否为别名,然后再找是否......
  • Linux
       1、什么是Linux系统          Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能......
  • 模拟Linux文件管理员系统-shell实现
    目录模拟Linux文件管理员系统-shell实现1系统要求2脚本执行效果2.1管理员登录效果2.2普通用户登录效果2.3密码文件格式3实现脚本4密码文件5说明模拟Linux文件管理员系统-shell实现注:此脚本仅供学习使用,具体需要根据实际情况进行测试调整。1系统要求2脚本执行效果2......
  • 13 Linux 蜂鸣器实验
    一、蜂鸣器驱动原理  常用蜂鸣器分两种,有源蜂鸣器和无源蜂鸣器。  它们俩的区别:有源蜂鸣器具有内置的振荡器和驱动电路,无源蜂鸣器没有;源蜂鸣器只需简单的数字信号来控制,无源蜂鸣器需要外部电路或微控制器来提供特定频率的脉冲信号。  在Linux下做的工作:①设备树中添加......
  • linux脚本手动占用cpu核数
    希望启动一个脚本,能够指定占用的cpu核数#!/bin/bash#filenamekillcpu.shendless_loop(){echo-ne"i=0;whiletruedoi=i+100;i=100done"|/bin/bash&}if[$#!=1];thenecho"USAGE:$0<CPUs>"exit1;fiforiin`seq$1`doendless......