作者简介

李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷。喜欢钻研底层技术,认为底层基础才是王道。一切新技术都离不开操作系统(CPU、内存、磁盘)、网络等。坚持输入输出,记录自己学习的点滴,在平凡中坚持前行,总有一天会遇见不一样的自己。公众号:运维汪(ID:Leeeee_Li)。
 
 

一、前言

作为运维人员,经常会遇到“小李啊,帮我取一下今天的日志”,因此在Linux服务器上压缩包、解压包是经常的事情,但是就我个人而言,经常会遇到很多不一样的压缩解压工具,最常用的是tar。虽然经常用,但是还是很多参数记不住,当然不用去记住每一个参数,--help就行。在十万火急的情况下,一个解压还要去google一下,好像也不合理,因此记住常用的几个还是有必要的,再同样的技术水平情况下,那就只能比速度了。
 

二、Linux下最常用的压缩工具

1、tar
 
1)压缩
tar -zcvf too.tar.gz too
2)解压
#.tar.gz
tar -zxvf too.tar.gz #.tar.gz2
tar -jxvf too.tar.gz2

3)排除某个目录打包

把too目录打包成too.tar.gz,除logs目录;注这里的too/logs后面不能加/,如果加的话还是会打包进去。
 
tar -czvf too.tar.gz --exclude=too/logs too
4)只打包某个目录,而不是全部打包进去
 
加-C参数, 这样的话可以只打包api3.0 ,而不会从/usr开始一个一个目录都打包进去
 
tar -zcf api3.0_`date +%Y%m%d%H%M%S`.tar.gz -C /usr/local/tomcat/webapps api3.0
2、gzip
 
gzip工具是Linux中最流行、最快的文件压缩工具,Gzip工具保留原始文件名称压缩文件的扩展名.gz和时间戳。
 
1)打包
gzip filename
2)解压
gzip -d filename # 打包的文件会被删除
3、bzip2
 
Bzip2实用程序执行更快的gzip,它压缩文件和文件夹更紧凑。压缩文件时需要更多的内存,为了减少内存消耗,在选项中通过-s标志。
 
1)压缩
bzip2 examplefile or bzip2 -s examplefile
2)解压
bzip2 -d examplefile.bz2 or bunzip2 examplefile.bz2

3)详细说明

bzip2 -v examplefile
4、Lzma
 
Lzma是一种压缩工具,与zip或tar类似,但与bzip相比,它的执行速度更快,虽然lzma是一个强大的工具,但它在Linux用户中并不流行。
 
1)压缩
lzma -c --stdout examplefile> examplefile.lzma
2)解压
lzma -d --stdout examplefile.lzma >examplefile
5、xz
 
XZ是lzma实用程序的继承者,它只能压缩单个文件,但不能在一个命令中压缩多个文件,它将自动为压缩文件添加.xz扩展名。
 
1)压缩
xz examplefile 
 
2)解压
xz -d examplefile
6、pax
 
Pax它的执行速度很快,而且它不仅仅是一个压缩器,它可以真正的归档它可以远程复制文件,在Ubuntu/Mint Linux中,默认情况下Pax没有安装。
 
1)压缩
pax -wf examplefile.tar examplefile
pax -wf examplefile.tar.gz examplefile
2)解压
pax -r <examplefile.tar
3)查看压缩包文件清单
pax -f examplefile.tar
7、7zip
 
7Zip文件压缩器是一个开源工具,它最初是为微软Windows开发的,它支持多种文件压缩格式和高文件压缩,它可以用一个命令压缩多个文件。
 
1)安装7zip
wget https://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/7/x86_64/Packages/p/p7zip-16.02-10.el7.x86_64.rpm
wget https://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/7/x86_64/Packages/p/p7zip-plugins-16.02-10.el7.x86_64.rpm sudo rpm -U --quiet p7zip-16.02-10.el7.x86_64.rpm
sudo rpm -U --quiet p7zip-plugins-16.02-10.el7.x86_64.rpm
2)压缩
7z  a examplefile.7z examplefile
3)解压
7z  a examplefile.7z examplefile
8、shar
 
Shar是一个命令行工具,可以用来压缩测试文件,Shar可以定义为“shell archive”。一个简单而快速的文件存档实用程序对于获取shell脚本的存档非常有用。
 
1)安装shar工具
yum -y install sharutils
2)压缩
shar examplefile > examplefile.shar
3)解压
unshar examplefile.shar
9、cpio
 
可以定义为复制输入和输出,它在输入中逐行读取文件名列表,在输出中读取归档文件。这是一个内置的经典命令。
 
1)压缩
ls | cpio -ov >/home/username/backup.cpio
2)解压
cpio -idv <backup.cpio
10、ar
 
rar的前身,仍然在Debian及其衍生物中使用,它是一个简单的归档工具,但并不是很流行。
 
1)压缩 
ar cvsr examplefile.a examplefile
 
2)解压
ar -xv examplefile.a
11、iso
 
ISO制作iso镜像
 
dd if=/media/dvd of=/home/username/filename.iso

Linux下最常用的10个文件压缩工具的更多相关文章

  1. Linux课程---2、Linux下最常用命令(查看帮助命令)

    Linux课程---2.Linux下最常用命令(查看帮助命令) 一.总结 一句话总结: man 1.显示文件? ls:ls带其它参数详情可以man ls man ls:比如 ls -a显示隐藏文件,l ...

  2. Linux下查找包含BOM头的文件和清除BOM头命令 2014-08-16 12:30:50

    Linux下查找包含BOM头的文件和清除BOM头命令 2014-08-16 12:30:50 分类: 系统运维 查找包含BOM头的文件,命令如下: 点击(此处)折叠或打开 grep -r -I -l ...

  3. linux下使用split 来分割大文件

    linux下使用split 来分割大文件 2010-07-27 15:46:27|  分类: 技术文稿 |  标签:split  分割  linux   |字号 订阅   平常都是使用ssh来进行远程 ...

  4. linux 下 mysql 常用命令

    linux 下 mysql 常用命令   阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...

  5. 【java】 linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  6. linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制)

    linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制) 发表于2012//07由feng linux 本身的ugo rwx的权限,对于精确的权限控制很是力不从心的,ac ...

  7. linux下c通过虚拟地址映射读写文件的代码

    在代码过程中中,把开发过程中比较好的一些代码片段记录起来,如下的代码内容是关于 linux下c通过虚拟地址映射读写文件的代码,应该对小伙伴有些好处.#include<stdio.h>#in ...

  8. Linux下简单粗暴使用rsync实现文件同步备份【转】

    这篇来说说如何安全的备份,还有一点不同的是上一篇是备份服务器拉取数据,这里要讲的是主服务器如何推送数据实现备份. 一.备份服务器配置rsync文件 vim /etc/rsyncd.conf #工作中指 ...

  9. linux下svn常用指令

    windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的 ...

随机推荐

  1. 第二篇 Scrum 冲刺博客

    一.站立式会议 1. 会议照片 2. 工作汇报 成员名称 昨日(23日)完成的工作 今天(24日)计划完成的工作 工作中遇到的困难 陈锐基 - 完成个人资料编辑功能- 对接获取表白动态的接口数据并渲染 ...

  2. Java堆内存中为什么有两个survival区及为什么与年轻代比例是1:1:8?

    Java堆内存分为年轻代和老年代,其中,年轻代分为Eden区和survival区,survival又分为fromSurvival和toSurvival. 首先第一个问题:为什么要有Survival区? ...

  3. gulp-sourcemaps的用法

    1.项目文件夹中,安装gulp-sourcemaps插件 npm install --save gulp-sourcemaps 2.gulpfile.js文件,导入要用到的插件. 如: // 引入gu ...

  4. 看我如何用微信上线CobaltStrike

    前言 DLL劫持漏洞是老生常谈的一个漏洞,已经被前辈们各种奇技淫巧玩烂.但DLL劫持技术在后渗透和域渗透中的权限提升和权限维持都起到了至关重要的作用.本文简单剖析DLL劫持技术并通过实例应用来查看如何 ...

  5. window下使用cmd查看端口占用的进程,并杀死该进程

    做项目的时候经常会遇到"address already in use"的情况,此时可以选择使用dos命令将该进程杀死. 首先,查找端口对应的进程,使用命令(以进程号8080为例): ...

  6. Jmeter(6)命令行执行

    Jmeter执行方式有2种:GUI和非GUI模式 GUI:在Windows电脑上运行,图形化界面,可直接查看测试结果,但是消耗压力机资源较高 非GUI:通过命令行执行,无图形化界面,不方便查看测试结果 ...

  7. 纯HTML + CSS制作个人资料卡

    总体预览: 材料:背景图与头像.jpg IDE:VS Code 外部链接:CDN加速的font-awesome图标 <link rel="stylesheet" href=& ...

  8. centos 7.0下安装MySQL 5.7.26

    1.下载MySQL 5.7.26安装包,卸载自带MySQL数据库 yum remove mariadb-libs -y yum install -y libaio-devel 2.上传MySQL 5. ...

  9. Excel-HLOOKUP函数匹配查找②

    问题场景 绩效奖金评定发放,针对表中的考核员工,先按考核总分评级,再根据根据分级评定绩效奖金. 场景一 在考核员工表中,根据员工的考核总分将其分为四个等级(可根据业务场景和实际情况分析):A级分数区间 ...

  10. Centos7.6上部署Supervisor来监控和操作各类服务

    supervisor    是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统.它可以很方便的监听.启动.停止.重启一个 ...