首页 > 系统相关 >linux-cmd-zip-unzip

linux-cmd-zip-unzip

时间:2023-05-17 16:47:09浏览次数:49  
标签:tmp unzip aaa zip cmd 压缩文件 root

linux-cmd-zip-unzip

参考地址

https://www.runoob.com/linux/linux-comm-zip.html

1.zip压缩

1.1.zip语法参数

zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]


# 常用压缩参数
-r 递归处理,将指定目录下的所有文件和子目录一并处理

-q 静默压缩
-v 显示详情,执行过程或版本信息
-x filename 压缩时排除符合条件的文件exclude,支持通配符

-<num> 设置压缩率,数字越大压得越狠,默认为 -9 全量压缩,-0 只打包不压缩

# 额外文件参数
-S 包含系统和隐藏文件。
-m 压缩并删除原始文件,慎用
-y 压缩时直接保存符号连接,而非该链接指向的源文件
-X 不保存额外的文件属性

# 压缩文件的检查修复
-T 检查备份文件内的每个文件是否正确无误
-F 修复已损坏的压缩文件,需要配置 --out 使用

# 压缩文件加注释
-c 给每个被压缩的文件加注释,交互式
-z 替压缩文件加注释,交互式,需要以句点结束

# 压缩文件时修改文件类型
-ll 压缩文件时,把LF+CR字符置换成LF字符
-l 压缩文件时,把LF字符置换成LF+CR字符

# 修改压缩文件的属性
-t<日期时间> 修改压缩文件的时间信息,格式:mmddyyyy or yyyy-mm-dd
-o 压缩文件时修改压缩文件的 modify 时间,以源文件中最新文件的更改时间的为准,可用

1.2.zip实例演示

  • 压缩,默认显示压缩率
# 压缩文件和目录
zip -r aaa.zip /tmp     # 递归处理子目录
zip -rq aaa.zip /tmp    # 静默压缩
zip -rv aaa.zip /tmp    # 显示压缩详情,in out 为压缩前后的文件大小,stored 为压缩率
zip -rv aaa.zip /tmp/ -x *argus.sock    # 压缩式排除某些文件,支持通配符

[root@zuiyoujie data]# zip -rv aaa.zip /tmp/ -x *argus.sock -9
updating: tmp/  (in=0) (out=0) (stored 0%)
updating: tmp/hsperfdata_root/  (in=0) (out=0) (stored 0%)
updating: tmp/hsperfdata_root/31659     (in=32768) (out=4393) (deflated 87%)
updating: tmp/hsperfdata_root/1927      (in=32768) (out=4377) (deflated 87%)
updating: tmp/a.txt     (in=0) (out=0) (stored 0%)
updating: tmp/b.txt     (in=0) (out=0) (stored 0%)
updating: tmp/c.txt     (in=0) (out=0) (stored 0%)
total bytes=65536, compressed=8770 -> 87% savings       # 原文件大小 65536B,压缩后大小 8770B,压缩率 87%,也就是减少了 87% 的大小
[root@zuiyoujie data]# ll
total 24
-rw-r--r-- 1 root root 11240 May 18 15:07 aaa.zip       # 实际查看文件大小,会稍大一些,应该是和磁盘分区有关,占得块大小问题
drwxr-xr-x 2 root root  4096 Mar 20  2020 backup
drwxr-xr-x 4 root root  4096 Feb 27  2020 supervisor
drwxr-xr-x 3 root root  4096 Feb 29  2020 wwwroot
  • 从压缩文件 aaa.zip 中删除文件 a.txt
zip -dv aaa.zip a.txt
  • 修复压缩文件
zip -F aaa.zip --out bbb.zip

[root@zuiyoujie data]# zip -F aaa.zip --out bbb.zip
Fix archive (-F) - assume mostly intact archive
Zip entry offsets do not need adjusting
 copying: tmp/systemd-private-d7946d0592934cc4a68fdc99302fb8f2-chronyd.service-OvboxA/
 copying: tmp/systemd-private-d7946d0592934cc4a68fdc99302fb8f2-chronyd.service-OvboxA/tmp/
 copying: tmp/hsperfdata_root/
 copying: tmp/hsperfdata_root/31659
 copying: tmp/hsperfdata_root/1927
 copying: tmp/a.txt
 copying: tmp/b.txt
 copying: tmp/c.txt

[root@zuiyoujie data]# zip -T aaa.zip 
test of aaa.zip OK
  • 压缩时删除源文件
[root@zuiyoujie data]# zip -rvm ccc.zip aaa.zip    
updating: aaa.zip       (in=11435) (out=11435) (stored 0%)
total bytes=11435, compressed=11435 -> 0% savings
zip diagnostic: deleting file aaa.zip
[root@zuiyoujie data]# ll
total 36
drwxr-xr-x 2 root root  4096 Mar 20  2020 backup
-rw-r--r-- 1 root root 11296 May 18 15:18 bbb.zip
-rw-r--r-- 1 root root 11599 May 18 15:25 ccc.zip
drwxr-xr-x 4 root root  4096 Feb 27  2020 supervisor
drwxr-xr-x 3 root root  4096 Feb 29  2020 wwwroot
  • 压缩时加注释信息
# 给每个文件都加各自的注释,交互式
zip -rvc ddd.zip /tmp -x*sock

[root@zuiyoujie data]# zip -rv ddd.zip /tmp -x*sock -c
updating: tmp/  (in=0) (out=0) (stored 0%)
updating: tmp/b.txt     (in=0) (out=0) (stored 0%)
updating: tmp/a.txt     (in=0) (out=0) (stored 0%)
updating: tmp/c.txt     (in=0) (out=0) (stored 0%)
Enter comment for tmp/:
001
Enter comment for tmp/b.txt:
004
Enter comment for tmp/a.txt:

Enter comment for tmp/c.txt:

total bytes=65536, compressed=8970 -> 86% savings

2.unzip解压缩

  • unzip 为 .zip 压缩文件的解压缩程序

2.1.unzip语法参数

# 语法:
unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

# 解压文件
-o overwrite files WITHOUT prompting,解压时强制覆盖现有文件
-n never overwrite existing files,解压时不会覆盖现有文件

# 检查文件
-t 对压缩文件中的每个文件进行检查
-l 列表显示压缩包的文件信息,包括 zip 时加入的注释信息,可用
-v 查看压缩文件详情
-z 查看压缩文件备注信息

# 其他参数
-d extract files into exdir,解压文件到指定目录
-x filename 解压时排除某些文件,支持通配符
-P<密码> 使用zip的密码选项。
-q  quiet mode (-qq => quieter)
-j  junk paths (do not make directories),解压时删除多级子目录

# 文件名处理
-s 将压缩文件中的全部文件名中的空白字符转换为下划线
-L 将压缩文件中的全部文件名改为小写。

# 输出文字结果
-X 解压缩时同时回存文件原来的UID/GID。
-M 将输出结果送到more程序处理。
-c 解压缩并转换为字符打印到屏幕上,乱码慎用
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换,乱码慎用

2.2.unzip实例演示

  • 解压文件
# 直接解压,默认遇到同名文件需要交互判断是否覆盖
unzip aaa.zip

# 将 aaa.zip 文件解压到 /tmp 目录下
unzip aaa.zip -d /tmp
  • 解压或查看压缩文件
unzip -t aaa.zip    # 检查压缩文件
unzip -l aaa.zip    # 列表查看压缩文件详情
unzip -v aaa.zip    # 查看压缩文件详情
  • music.zip 压缩包里有多级子目录,并且子目录中其实都是歌曲文件,需要把这些文件都存放到根目录,而不是使用原有的额目录结构
unzip -j music.zip
  • 官方示例
See "unzip -hh" or unzip.txt for more help.  Examples:
  unzip data1 -x joe   => extract all files except joe from zipfile data1.zip
  unzip -p foo | more  => send contents of foo.zip via pipe into program more
  unzip -fo foo ReadMe => quietly replace existing ReadMe if archive file newer

标签:tmp,unzip,aaa,zip,cmd,压缩文件,root
From: https://www.cnblogs.com/tssc/p/17409224.html

相关文章

  • linux-cmd-kill
    kill命令介绍kill命令用了关闭执行中的进程。是通过向进程id发送信号来工作。默认的信号为SIGTERM(15),通知进程关闭。语法参数语法:kill[-ssignal|-p][--]pid...kill-l[signal]常用参数:-l<信息名或数字>:默认-l参数会列出全部的信号名称,指定信......
  • linux-cmd-nc端口测试
    nc命令检测端口监听TCP端口33333nc-l33333检测TCP端口连通性172.20.0.1端口33333nc-vz172.20.0.133333检测UDP端口连通性172.20.0.1端口40001nc-vzu127.0.0.140001......
  • linux-cmd-brctl网桥管理
    linux-cmd-brctl网桥管理安装网桥管理工具包:bridge-utileyuminstallbridge-utils-y使用brctl命令创建网桥br1brctladdbrbr1删除网桥br1brctldelbrbr1将eth0端口加入网桥br1brctladdifbr1eth0删除eth0端口加入网桥br1brctldelifbr1eth0查询网桥信息b......
  • Kali下压缩解压缩命令大全zip,tar,tar.gz,tar.bz2(转)
    转自http://blog.csdn.net/yangjin_unique/article/details/7824852tar解包:tarxvfFileName.tar打包:tarcvfFileName.tarDirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzipFileName.gz解压2:gzip-dFileName.gz压缩:gzipFileName.tar.gz解......
  • linux-cmd-cal万年历
    linux下有查看万年历日历的命令[root@zuiyoujie1~]#cal十月2016日一二三四五六12345678910111213141516171819202122232425262728293031[root@zuiyoujie1~]#cal2016......
  • linux-cmd-iperf网络压测
    网络压测yuminstalliperf#开启server端10.0.0.1iperf-s-i2#开启client端10.0.0.2iperf-c10.0.0.1-i2实例演示#server[root@zuiyoujie01tools]iperf-s-i2------------------------------------------------------------ServerlisteningonTC......
  • 数据分享|R语言零膨胀泊松回归ZERO-INFLATED POISSON(ZIP)模型分析露营钓鱼数据实例估计
    全文链接:http://tecdat.cn/?p=26915最近我们被客户要求撰写关于零膨胀泊松回归的研究报告,包括一些图形和统计输出。零膨胀泊松回归用于对超过零计数的计数数据进行建模。此外,理论表明,多余的零点是通过与计数值不同的过程生成的,并且可以独立地对多余的零点进行建模。因此,zip模型......
  • Delphi-Delphi通过管道执行外部命令行程序(cmd)并获取返回结果
     相关资料:https://www.shuzhiduo.com/A/gGdXxNGmd4/     Delphi通过管道执行外部命令行程序(cmd)并获取返回结果实例代码:unitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Vcl.......
  • Powershell 无法将“mysql”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
    Win键+Q,在搜索框内输入Powershell。点击以管理员身份运行Powershell。粘贴代码 set-executionpolicyremotesigned 按回车键执行命令。输入A,按回车键确认。 ......
  • 常用指令—python,cmd,pytorch等
    1.查看当前使用的python解释器查看电脑里有多少个pythonwherepython查看当前使用的python解释器在哪个路径下在cmd中,切换到pythonimportsyssys.executable2.conda查看虚拟环境列表condaenvlist激活具体虚拟环境condaactivate环境名3.pytorchimport......