linux(centos8):使用zip/unzip压缩和解压缩文件
一,查看zip命令所属的rpm包
1,zip
[root@kubemaster ~]# whereis zip
zip: /usr/bin/zip /usr/share/man/man1/zip.1.gz
[root@kubemaster ~]# rpm -qf /usr/bin/zip
zip-3.0-23.el8.x86_64
[root@kubemaster ~]# dnf install zip
2,unzip
[root@kubemaster ~]# whereis unzip
unzip: /usr/bin/unzip /usr/share/man/man1/unzip.1.gz
[root@kubemaster ~]# rpm -qf /usr/bin/unzip
unzip-6.0-43.el8.x86_64
如果找不到unzip命令,
可以用dnf进行安装
[root@kubemaster ~]# dnf install unzip
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,查看zip命令的版本和帮助:
[root@kubemaster ~]# zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
Zip 3.0 (July 5th 2008). Usage:
zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
...
[root@kubemaster ~]# unzip
UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send
bug reports using http://www.info-zip.org/zip-bug.html; see README for details. Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
Default action is to extract files in list, except those in xlist, to exdir;
...
三,zip的常用例子
[root@kubemaster zip]# zip t1.zip a.txt b.txt
adding: a.txt (deflated 82%)
adding: b.txt (deflated 82%)
2,查看zip包中包含的文件:
用zip查看
#-sf:--show-files:显示文件列表
[root@kubemaster zip]# zip -sf t1.zip
Archive contains:
a.txt
b.txt
Total 2 entries (112 bytes)
用unzip查看
#-l:列出文件
[root@kubemaster zip]# unzip -l t1.zip
Archive: t1.zip
Length Date Time Name
--------- ---------- ----- ----
56 07-28-2020 18:38 a.txt
56 07-28-2020 18:38 b.txt
--------- -------
112 2 files
用zipinfo查看:
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 318 bytes, number of entries: 2
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
2 files, 112 bytes uncompressed, 20 bytes compressed: 82.1%
说明:zipinfo是unzip包中自带的命令
3,添加一个文件到现有的zip包
[root@kubemaster zip]# zip t1.zip c.txt
adding: c.txt (deflated 82%)
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 466 bytes, number of entries: 3
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
3 files, 168 bytes uncompressed, 30 bytes compressed: 82.1%
可以看到已添加成功
4,从现有的zip压缩包中删除一个文件
[root@kubemaster zip]# zip -d t1.zip c.txt
deleting: c.txt
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 318 bytes, number of entries: 2
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
2 files, 112 bytes uncompressed, 20 bytes compressed: 82.1%
可以看到已删除成功
5,添加到zip时去掉原目录,只保留文件名:
#-j:不处理压缩文件中原有的目录路径
[root@kubemaster zip]# zip -j t1.zip /var/log/cron
adding: cron (deflated 86%)
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 1559 bytes, number of entries: 4
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
-rw------- 3.0 unx 6973 tx defN 20-Jul-28 19:01 cron
4 files, 7141 bytes uncompressed, 987 bytes compressed: 86.2%
可以看到cron已经被去掉了目录信息
6,替换zip包中的文件:
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 1559 bytes, number of entries: 4
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
-rw------- 3.0 unx 6973 tx defN 20-Jul-28 19:01 cron
4 files, 7141 bytes uncompressed, 987 bytes compressed: 86.2%
可以看到a.txt的文件大小是56
我们修改a.txt文件后,替换压缩包中的此文件
[root@kubemaster zip]# zip -u t1.zip a.txt
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 1564 bytes, number of entries: 4
-rw-r--r-- 3.0 unx 252 tx defN 20-Jul-28 19:25 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
-rw------- 3.0 unx 6973 tx defN 20-Jul-28 19:01 cron
4 files, 7337 bytes uncompressed, 992 bytes compressed: 86.5%
已替换成功
7,指定压缩比时,默认的压缩比是多少?
[root@kubemaster zip]# zip -h2
...
-0 store files (no compression)
-1 to -9 compress fastest to compress best (default is 6)
...
这个值一般不需要改动
[root@kubemaster goods]# ls
ga.txt gb.txt
[root@kubemaster goods]# cd ..
[root@kubemaster zip]# zip -r t1.zip ./goods/
adding: goods/ (stored 0%)
adding: goods/ga.txt (deflated 71%)
adding: goods/gb.txt (deflated 74%)
[root@kubemaster zip]# zipinfo t1.zip
Archive: t1.zip
Zip file size: 2020 bytes, number of entries: 7
-rw-r--r-- 3.0 unx 252 tx defN 20-Jul-28 19:25 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
-rw------- 3.0 unx 6973 tx defN 20-Jul-28 19:01 cron
drwxr-xr-x 3.0 unx 0 bx stor 20-Jul-31 11:22 goods/
-rw-r--r-- 3.0 unx 21 tx defN 20-Jul-31 11:22 goods/ga.txt
-rw-r--r-- 3.0 unx 23 tx defN 20-Jul-31 11:22 goods/gb.txt
7 files, 7381 bytes uncompressed, 1004 bytes compressed: 86.4%
四,例子:zip包加密码
[root@kubemaster zip]# zip -P pass -r t2.zip goods
adding: goods/ (stored 0%)
adding: goods/ga.txt (deflated 71%)
adding: goods/gb.txt (deflated 74%)
[root@kubemaster zip]# unzip t2.zip
Archive: t2.zip
[t2.zip] goods/ga.txt password:
五,例子:zip包加备注 :
[root@kubemaster zip]# zip -z t1.zip
enter new zip file comment (end with .):
goods list zip
important files.
.
2,查看zip文件中已添加的注释
[root@kubemaster zip]# zipnote t1.zip
...
goods list zip
important files.
3,用zipinfo也可以查看注释
# -z: 打印注释
[root@kubemaster zip]# zipinfo -z t1.zip
Archive: t1.zip
goods list zip
important files.
Zip file size: 2052 bytes, number of entries: 7
-rw-r--r-- 3.0 unx 252 tx defN 20-Jul-28 19:25 a.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 18:38 b.txt
-rw-r--r-- 3.0 unx 56 tx defN 20-Jul-28 19:02 c.txt
-rw------- 3.0 unx 6973 tx defN 20-Jul-28 19:01 cron
drwxr-xr-x 3.0 unx 0 bx stor 20-Jul-31 11:22 goods/
-rw-r--r-- 3.0 unx 21 tx defN 20-Jul-31 11:22 goods/ga.txt
-rw-r--r-- 3.0 unx 23 tx defN 20-Jul-31 11:22 goods/gb.txt
7 files, 7381 bytes uncompressed, 1004 bytes compressed: 86.4%
六,unzip的常用例子
[root@kubemaster zip]# unzip -t t2.zip
Archive: t2.zip
testing: goods/ OK
[t2.zip] goods/ga.txt password:
testing: goods/ga.txt OK
testing: goods/gb.txt OK
No errors detected in compressed data of t2.zip.
[root@kubemaster zip]# unzip t2.zip -d /root/unzip
Archive: t2.zip
creating: /root/unzip/goods/
[t2.zip] goods/ga.txt password:
inflating: /root/unzip/goods/ga.txt
inflating: /root/unzip/goods/gb.txt
[root@kubemaster zip]# ls /root/unzip/
goods
3,解压缩时取消目录:
#-j:忽略文件原有目录,把文件统一解压到第一级目录
[root@kubemaster zip]# unzip -j t2.zip -d /root/undir
Archive: t2.zip
[t2.zip] goods/ga.txt password:
inflating: /root/undir/ga.txt
inflating: /root/undir/gb.txt
[root@kubemaster zip]# ls /root/undir
ga.txt gb.txt
4,解压缩指定的文件
说明:把要解压的文件名写到命令行中zip包后面即可
[root@kubemaster zip]# unzip t2.zip goods/gb.txt -d /root/undir2
Archive: t2.zip
[t2.zip] goods/gb.txt password:
inflating: /root/undir2/goods/gb.txt
[root@kubemaster zip]# ls -R /root/undir2
/root/undir2:
goods /root/undir2/goods:
gb.txt
七,查看linux的版本:
[root@kubemaster ~]# cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
linux(centos8):使用zip/unzip压缩和解压缩文件的更多相关文章
- Linux常用命令学习3---(文件的压缩和解压缩命令zip unzip tar、关机和重启命令shutdown reboot……)
1.压缩和解压缩命令 常用压缩格式:.zip..gz..bz2..tar.gz..tar.bz2..rar .zip格式压缩和解压缩命令 zip 压缩文件名 源文件:压缩文件 ...
- 【转载】 Linux常用命令: zip、unzip 压缩和解压缩命令
Linux常用命令: zip.unzip 压缩和解压缩命令 Linux常用命令: zip.unzip 压缩和解压缩命令 zip的用法 基本用法是: zip [参数] [打包后的文件名] [打包的目 ...
- 【转载】linux 压缩和解压缩命令gz、tar、zip、bz2
linux系统下压缩解压缩很让人头大,每次都要查命令.转载下方便以后查阅.原文信息如下: 作者:capecape 来源:CSDN 原文:https://blog.csdn.net/capecape/a ...
- Linux系列教程(八)——Linux常用命令之压缩和解压缩命令
前面一篇博客我们讲解了Linux帮助和用户管理命令,对于帮助命令,man 命令能获得命令和配置文件的帮助信息,help命令能获得shell内置命令的帮助信息.我们可以通过which来区分什么是shel ...
- Linux常用命令之压缩和解压缩命令
目录 1.压缩解压缩格式 .gz 一.将文件压缩为 .gz 格式,只能压缩文件:gzip 二.将 .gz 文件解压:gunzip 2.压缩解压缩格式 .tar.gz 一.将文件或目录压缩为 .tar. ...
- Linux命令——压缩和解压缩
Linux命令--压缩和解压缩 尽管文件后缀名在Linux中没什么用,但还是来看看: .gz:表示由gzip压缩工具压缩的文件 .bz2:表示由bzip2压缩工具压缩的文件 .tar:表示由tar打包 ...
- Linux关于压缩和解压缩实例
在谈到压缩和解压缩,我想说说它们的应用场景,其实它们主要的应用场景是有这么几个方面? (1)备份(几十个数据库每天进行备份,即包含数据又包含脚本,还有其他十分重要的日志文件等等); (2)降低服务器存 ...
- 『学了就忘』Linux基础命令 — 32、压缩和解压缩相关命令
目录 1.".zip"格式压缩 2.".gz"格式压缩 3.".bz2"格式压缩 4.".tar"格式打包 5.打包和压 ...
- Linux下的压缩和解压缩命令——gzip/gunzip
gzip命令 gzip命令用来压缩文件.gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处".gz"扩展名. gzip是在Linux系统中经常使用的一个对文件进行压 ...
随机推荐
- App网络测试
弱网测试作为健壮性测试的重要部分,对于移动端测试必不可少. 什么样的网络属于弱网? 小于或等于2G速率的都属于弱网,且随着5G的到来,3G网络速率的降低,未来3G也会逐渐划入弱网的行列. 对于弱网的数 ...
- ribbon源码(6) Server
Server 代表一个服务器信息. 内部有服务器地址(host).服务器端口(port).服务器dc(zone).是否存活标志(isAliveFlag).请求协议(scheme).是否可以提供服务(r ...
- 虚拟机堆(Heap)的基础知识
概述 一个进程对应一个JVM实例,一个运行时数据区,又包含多个线程,这些线程共享了方法区和堆,每个线程包含了程序计数器.本地方法栈和虚拟机栈 一个JVM实例只存在一个堆内存,堆也是Java内存管理的核 ...
- JVM学习(七)JMM内存模型
一.什么是JMM 概念:Java内存模型(Java Memory Model ,JMM)就是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异的,保证了Java程序在各种平台下对内存的访问都能 ...
- 科普-- 白话HTTPS
HTTPS是传输协议吗? HTTPS与HTTP有什么关系? HTTPS为什么会安全? 闲扯一下 Mac笔记本.Windows台式机.Linux主机.像这三种类型,它们硬件不同,系统不同,服务端处理的编 ...
- Python-IndexError: list index out of range
Error:IndexError: list index out of range Where? 对Python中有序序列进行按索引取值的时候,出现这个异常 Why? 对于有序序列: 字符串 str ...
- Ajax接收int类型乱码
在Ajax返回值类型是 "text" 的时候,接收int类型时可能会出现ၧ 解决方法:将int转为String即可 int money =100; String s = Integ ...
- [VBA原创源代码] excelhome 对花名册进行分类
最近在学习<菜鸟谈VBA最最基础入门<原创>>,其中第22节有一个VBA编程作业,实现对花名册进行分类. 自己花了点时间,自己丫丫学步,终于实现出来. 在原创聚集地cnblog ...
- VS2015如何调试自己写的DLL与调试
转载: 1. https://blog.csdn.net/u014738665/article/details/79779632 2. https://blog.csdn.net/jacke121/a ...
- 插头 dp
插头dp 洛谷 黑题板子? P5056 给出n×m的方格,有些格子不能铺线,其它格子必须铺,形成一个闭合回路.问有多少种铺法? 1.轮廓线 简单地说,轮廓线就是已决策格子和未决策格子的分界线: 2,插 ...