百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

Linux 压缩文件和文件夹6个最常用命令

bigegpt 2024-08-11 14:22 8 浏览

请关注本头条号,每天坚持更新原创干货技术文章。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

1. 前言

本文主要介绍Linux系统下最常用的压缩与解压缩工具,本文特别针对压缩文件夹和目录,而作出使用指引。

2. 使用zip压缩和解压缩文件夹

zip压缩

Ubuntu系统安装zip套件:

oucanrong@zcwyou:~$ sudo apt install -y zip unzip

CentOS/RHEL安装zip套件

[root@zcwyou ~]# yum -y install zip unzip

把当前目录xinshiji_ou压缩成为xinshiji_ou.zip

oucanrong@zcwyou:~$ zip -r ./xinshiji_ou.zip ./xinshiji_ou/

adding: xinshiji_ou/ (stored 0%)

adding: xinshiji_ou/format_result.txt.old (deflated 56%)

adding: xinshiji_ou/template.txt.bak (deflated 49%)

adding: xinshiji_ou/wubi-xinshiji.png (deflated 0%)

adding: xinshiji_ou/install.sh (deflated 66%)

adding: xinshiji_ou/allonecharacter.txt (deflated 55%)

检查xinshiji_ou.zip的大小:

oucanrong@zcwyou:~$ ll -h xinshiji_ou.zip

-rw-r--r-- 1 oucanrong oucanrong 133K 12月 23 22:17 xinshiji_ou.zip

Linux 解压zip文件:

oucanrong@zcwyou:~/iso$ unzip xinshiji_ou.zip

3. 使用7z压缩文件

使用7zip压缩

7z,一种文件压缩格式,具有高压缩比率,它采用了多种压缩算法进行数据压缩。它是一个开放源码的数据压缩程序。Ubuntu安装7z套件:

oucanrong@zcwyou:~$ sudo apt install -y p7zip-full

CentOS/RHEL安装7z套件:

[root@zcwyou ~]# yum -y install p7zip

把当前目录zcwyou压缩为zcwyou.7z文件:

[root@zcwyou ~]# 7za a zcwyou.7z ./zcwyou

选项a表示添加压缩文件。

解压:

[root@zcwyou ~]# 7za x zcwyou.7z

选项x表示按原路径解压缩。

选项e表示就地解压,即不会创建一个目录容纳解压文档。

4. 使用tar打包并结合bzip2压缩算法

bzip2压缩算法

bzip2是Julian Seward开发并按照自由软件/开源软件协议发布的数据压缩算法及程序。bzip2 是一个基于Burrows-Wheeler 变换的无损压缩软件,免费开源。先安装bzip2套件:

Ubuntu安装bzip2套件:

oucanrong@zcwyou:~/iso$ sudo apt -y install bzip2

CentOS/RHEL安装bzip2套件:

[root@zcwyou ~]# yum -y install bzip2

把当前目录xinshiji_ou打包并压缩为xinshiji_ou.tar.bz2文件

oucanrong@zcwyou:~$ tar jcvf xinshiji_ou.tar.bz2 ./xinshiji_ou/

tar选项解释:

j表示使用bzip2解压

c表示创建文件

v表示输出详细执行过程

f表示以文件形式保存。

解压

oucanrong@zcwyou:~$ tar jxvf xinshiji_ou.tar.bz2

这里的x选项表示解压。

5. 使用tar打包并结合xz压缩算法

xz压缩算法

xz是一种压缩文件格式,采用LZMA SDK压缩,压缩后的文件比gzip压缩文件(.gz或·tgz)小30%,比·bz2小15%,但压缩的速度比bz2和gzip都要慢。CentOS/RHEL系统安装xz套件:

[root@zcwyou ~]# yum -y install xz

Ubuntu系统安装xz套件:

oucanrong@zcwyou:~$ sudo apt install -y xz-utils

把当前目录xinshiji_ou压缩成为xinshiji_ou.tar.xz

oucanrong@zcwyou:~$ tar Jcvf xinshiji_ou.tar.xz ./xinshiji_ou/

这里的大写J选项表示使用xz压缩算法

解压:

oucanrong@zcwyou:~$ tar Jxvf xinshiji_ou.tar.xz

6. 使用tar打包并结合gzip压缩算法

使用gzip压缩文件

使用tar打包的文件交由gzip压缩的,gzip首先使用LZ77算法的一个变种进行压缩,对得到的结果再使用Huffman编码,其特点是开源、快速,它产生的压缩文件后缀一般使用.gz,如果结合tar,即后缀为.tar.gzoucanrong@zcwyou:~/iso$ tar zcvf xinshiji_ou.tar.gz ./xinshiji_ou/

这里的z选项表示使用gzip算法。

解压:

oucanrong@zcwyou:~/iso$ tar zxvf xinshiji_ou.tar.gz

7. 使用tar打包并结合compress压缩算法(不推荐,compress已经被gzip取代)

tar结合compress压缩算法

Linux compress是一个古老的压缩软件和算法,目前已经被gzip取替,因为gzip压缩率更高。oucanrong@zcwyou:~/iso$ tar Zcvf xinshiji_ou.tar.z ./xinshiji_ou/

解压:

oucanrong@zcwyou:~/iso$ tar Zxvf xinshiji_ou.tar.z

8. 总结:

我个人的偏好选择,7z>zip>xz>bzip2>xz>gz>compress,其中7z与zip,与Windows的完美兼容的。你可能会问,那rar呢?其实rar是有Linux版的,但由于是私有的算法,本身不包括在官方仓库中,需要额外配置软件仓库,这里就不多介绍了,因为以上的方法已经足够使用,也考虑了与Windows的兼容性了。

本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:

https://www.linuxrumen.com/rmxx/245.html

点击了解更多,快速查看更多的技术文章列表。

相关推荐

5分钟搭建公网https网页文件服务器,免费权威TLS证书

请关注本头条号,每天坚持更新原创干货技术文章。如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习前言本文主要讲解如何快速搭建一个https网页文件服务器,并免费申请权威机构颁发的tls证...

nginx负载均衡配置(nginx负载均衡配置两个程序副本)

Nginx是什么没有听过Nginx?那么一定听过它的“同行”Apache吧!Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(UniformResources...

19《Nginx 入门教程》Nginx综合实践

今天我们将基于Nginx完成两个比较有用的场景,但是用到的Nginx的配置非常简单。内部Yum源搭建内部Pip源搭建1.实验环境ceph1centos7.6内网ip:172.16....

Nginx性能调优与优化指南(nginx优化配置大全)

Nginx性能调优需要结合服务器硬件资源、业务场景和负载特征进行针对性优化。以下是一些关键优化方向和具体配置示例:一、Nginx配置优化1.进程与连接数优化nginxworker_process...

C++后端开发必须彻底搞懂Nginx,从原理到实战(高级篇)

本文为Nginx实操高级篇。通过配置Nginx配置文件,实现正向代理、反向代理、负载均衡、Nginx缓存、动静分离和高可用Nginx6种功能,并对Nginx的原理作进一步的解析。当需...

【Nginx】史上最全的Nginx配置详解

Nginx服务器配置中最频繁的部分,代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里,http块又包括http全局块和server块。Nginx是非常重要的负载均衡中间件,被广泛应用于大型...

【Nginx】Nginx 4种常见配置实例(nginx基本配置与参数说明)

本文主要介绍nginx4种常见的配置实例。Nginx实现反向代理;Nginx实现负载均衡;Nginx实现动静分离;Nginx实现高可用集群;Nginx4种常见配置实例如下:一、Nginx反向代理配...

使用nginx+allure管理自动化测试报告

allure在自动化测试中经常用来生成漂亮的报告,但是网上及官网上给出的例子都仅仅是针对单个测试用例文件的形式介绍的,实际使用中,自动化测试往往需要包含不止一个产品或项目,本文介绍如何使用nginx+...

nginx配置文件详解(nginx配置文件详解高清版)

Nginx是一个强大的免费开源的HTTP服务器和反向代理服务器。在Web开发项目中,nginx常用作为静态文件服务器处理静态文件,并负责将动态请求转发至应用服务器(如Django,Flask,et...

SpringCloud Eureka-服务注册与发现

1.Eureka介绍1.1学习Eureka前的说明目前主流的服务注册&发现的组件是Nacos,但是Eureka作为老牌经典的服务注册&发现技术还是有必要学习一下,原因:(1)一些早期的分布式微服...

微服务 Spring Cloud 实战 Eureka+Gateway+Feign+Hystrix

前言我所在项目组刚接到一个微服务改造需求,技术选型为SpringCloud,具体需求是把部分项目使用SpringCloud技术进行重构。本篇文章中介绍了Eureka、Gateway、Fe...

深度剖析 Spring Cloud Eureka 底层实现原理

你作为一名互联网大厂后端技术开发人员,在构建分布式系统时,是不是常常为服务的注册与发现而头疼?你是否好奇,像SpringCloudEureka这样被广泛使用的组件,它的底层实现原理到底是怎样的...

热爱生活,喜欢折腾。(很热爱生活)

原文是stackoverflow的一则高票回答,原文链接可能之前也有人翻译过,但是刚好自己也有疑惑,所以搬运一下,个人水平有限所以可能翻译存在误差,欢迎指正(如侵删)。尽管classmethod和st...

GDB调试的高级技巧(详细描述gdb调试程序的全过程)

GDB是我们平时调试c/c++程序的利器,查起复杂的bug问题,比打印大法要好得多,但是也不得不说,gdb在默认情况下用起来并不是很好用,最近学习到几个高级点的技巧,分享下:一美化打印先上个例子...

Arduino 实例(二十三)Arduino 给Python 编译器发送信息

1首先Python需要安装Pyserial库,在命令提示符中输入pipintallpyserial若是遇到提示‘pip‘不是内部或外部命令,也不是可运行的程序或批处理文件,则需要设置环境变...