0038. shell命令--zip

python数据集下载_下载KITTI数据集raw data的Python脚本 KITTI数据集是自动驾驶领域的经典数据集之一,raw data大小有上百G,官方在raw data界面提供了一个shell脚本raw dataset download script来帮助下载,该shell脚本会自动下载所有raw data并解压到指定文件夹。由于raw data过大,断断续续下了好几天,后来在用数据的时候发现有的图像出现损坏,有的文件夹下没有文件,遂想重新下载一下未解压的raw ... 阅读详情

目录

38. shell命令--zip

功能说明

语法格式

选项说明

实践操作

注意事项


38. shell命令--zip

功能说明

        zip 命令在 Linux 系统中是一个非常实用的工具,用于压缩和打包文件。它可以将多个文件和目录压缩成一个 .zip 文件,便于存储和传输。下面将详细介绍 zip 命令的一些基本用法和选项。

语法格式

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

SYNOPSIS
       zip  [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$]  [--longoption ...]  [-b path] [-n suffixes] [-t
       date] [-tt date] [zipfile [file ...]]  [-xi list]

       zipcloak (see separate man page)

       zipnote (see separate man page)

       zipsplit (see separate man page)

       Note:  Command line processing in zip has been changed to support long options and  handle
       all  options  and arguments more consistently.  Some old command lines that depend on com-
       mand line inconsistencies may no longer work.

选项说明

-A 调整可执行的自动解压缩文件。
-b<工作目录> 指定暂时存放文件的目录。
-c 替每个被压缩的文件加上注释。
-d 从压缩文件内删除指定的文件。
-D 压缩文件内不建立目录名称。
-e 创建加密的 zip 归档文件,随后会提示你输入密码。
-f 更新现有的文件。
-F 尝试修复已损坏的压缩文件。
-g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h 在线帮助。
-i<范本样式> 只压缩符合条件的文件。
-j 只保存文件名称及其内容,而不存放任何目录名称。
-J 删除压缩文件前面不必要的数据。
-k 使用MS-DOS兼容格式的文件名称。
-l 压缩文件时,把LF字符置换成LF+CR字符。
-ll 压缩文件时,把LF+CR字符置换成LF字符。
-L 显示版权信息。
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-n<字尾字符串> 不压缩具有特定字尾字符串的文件。
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q 不显示指令执行过程。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-S 包含系统和隐藏文件。
-t<日期时间> 把压缩文件的日期设成指定的日期。
-T 检查备份文件内的每个文件是否正确无误。
-u 与 -f 参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 显示指令执行过程或显示版本信息。
-V 保存VMS操作系统的文件属性。
-w 在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。
-x<范本样式> 压缩时排除符合条件的文件。
-X 不保存额外的文件属性。
-y 直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。
-z 替压缩文件加上注释。
-$ 保存第一个被压缩文件所在磁盘的卷册名称。
-@ 从标准输入读取名称
-<压缩效率> 压缩效率是一个介于1-9的数值。-1: 压缩速度更快,-9: 压缩得更好
-0 仅存储

实践操作

0. 环境准备
mkdir -p /test/zip
cd /test/zip
mkdir -p dir1/test{1,2}/{a..c}
touch file{1..3}.txt
yes test |head -c 10M >10MB_file.txt
ll

1. 压缩单个文件
zip compressed_file-1.zip file1.txt 
ls
ll compressed_file-1.zip 
unzip -v compressed_file-1.zip    #查看压缩文件
zip compressed_file-1.zip file1.txt 
zip -q compressed_file-1.zip file1.tx    #静默压缩

2. 压缩多个文件
zip compressed_file-2.zip file1.txt file2.txt file3.txt 
ls
ll compressed_file-2.zip
unzip -v compressed_file-2.zip  


3. 压缩整个目录
zip compressed_dir-1.zip dir1/
zip -r compressed_dir-2.zip dir1/    #压缩整个目录需要加个 -r 选项
ll compressed_dir-*
unzip -v compressed_dir-1.zip
unzip -v compressed_dir-2.zip

4. 指定压缩比压缩文件
ll 10MB_file.txt
zip -1 10MB_min.zip 10MB_file.txt 
zip -9 10MB_max.zip 10MB_file.txt    #可能需要更长的处理时间
ll 10MB_*
unzip -v 10MB_min.zip
unzip -v 10MB_max.zip

5. 创建密码保护的 zip 文件
ls
zip -e secure_file.zip file1.txt
ll secure_file.zip 
unzip -v secure_file.zip

6. 只压缩新文件或已更改的文件
ls
unzip -v compressed_file-1.zip 
zip -u compressed_file-1.zip file2.txt    #使用 -u 参数更新归档
unzip -v compressed_file-1.zip 

7. 删除压缩文件内容
ls
cp compressed_dir-2.zip compressed_dir-2.1.zip
unzip -v compressed_dir-2.zip 
zip -d compressed_dir-2.zip dir1/test2/
mv dir1/ dir999
ls
unzip compressed_dir-2.zip    #解压归档文件
ls
ls dir1/    #什么情况?怎么没删除掉?
ls dir999/
mv dir1/ dir999/
unzip -v compressed_dir-2.1.zip 
zip -d compressed_dir-2.1.zip dir1/test2/*    #需要指明白删除哪个文件
unzip -v compressed_dir-2.1.zip
unzip compressed_dir-2.1.zip
ls
ls dir1/
  
8. 压缩文件但不保留目录结构
ls
mv file3.txt dir1/test1/a/
ls dir1/test1/a/
zip compressed_file3-1.zip dir1/test1/a/file3.txt 
zip -j compressed_file3-2.zip dir1/test1/a/file3.txt    #使用 -j 选项不保留目录结构
unzip -v compressed_file3-1.zip 
unzip -v compressed_file3-2.zip 

9. 压缩时指定排除目录
ls
ls dir1/
ls dir1/test1/
zip -r compressed_dir-3.zip dir1/ -x "dir1/test1/b" -x "dir1/test1/c/*"
unzip -v compressed_dir-3.zip
zip -r compressed_dir-3.zip dir1/ -x dir1/test1/b/ -x "dir1/test1/c/*"
zip -r compressed_dir-3.zip dir1/ -x dir1/test1/b/ -x "dir1/test1/c/*" 
zip -r compressed_dir-3.zip dir1/ -x dir1/test1/a
zip -r compressed_dir-3.zip dir1/ -x dir1/test1/a/
zip -r compressed_dir-3.zip dir1/ -x dir1/test1/a/*
zip -r compressed_dir-3.zip dir1/ -x "dir1/test1/a/*"
zip -r compressed_dir-3.zip dir1/  --exclude "*.txt"

10. 检查备份文件内的每个文件是否正确无误
zip -T compressed_dir-1.zip
zip -T compressed_dir*
find . -name "*.zip" -exec zip -T {} \;    #有个需要输入密码

注意事项

  • 压缩大量小文件时,zip 命令可能会比较慢,因为每个文件都需要单独处理。
  • 加密的 zip 文件在安全性方面并不是非常强大,特别是对于需要高安全性的场景。
  • zip 命令的完整选项列表和详细说明可以通过在终端中运行 man zip 或 zip --help 来查看。
下载kitti RAW DATA数据集 仅整理记录一下,都有参考的文章和出处。 阅读详情

相关推荐

Shell 命令集合 备份压缩 】⭐⭐Linux 压缩和归档工具 zip命令 使用指南

Linux中,zip命令用于将文件和目录压缩成一个压缩文件。它是一种常用的压缩和归档工具,可以将多个文件和目录打包成一个单独的文件,以便更方便地传输、存储或备份。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 2673

shell命令zip压缩和解压

zip压缩和解压命令

weixin_44498669的博客 1万+

Shell 命令集合 磁盘管理 】Linux 压缩zip文件 mazip命令使用教程

mzip命令Linux中的一个压缩命令,用于将文件或目录压缩成zip格式的压缩包。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1296

53.常用shellzip / unzip - 压缩和解压 ZIP 文件 的用法及衍生用法

zip和unzip是在类 Unix 系统的 shell 中用于处理 ZIP 文件的常用命令zip用于创建压缩文件(.zip 格式),而unzip用于解压这些文件。这些命令在文件打包、压缩和传输中非常有用。以下是zip和unzip

山水青一人尤 1915

shell: zip/chmod

chmod 是一个在 Unix 和 Unix-like 操作系统(如 Linux)中用于修改文件或目录权限的命令。权限决定了哪些用户可以对文件或目录进行读取、写入或执行操作。

weixin_39244242的博客 1122

Linux-shell常用运维指令

ps命令将某个进程显示出来grep命令是查找中间的**|**是管道命令 是指ps命令与grep同时执行ps是LINUX下最常用的也是非常强大的进程查看命令grep命令是查找,是一种强大的文本搜索工具字段含义如下:UID :程序被该 UID 所拥有PID :就是这个程序的 IDPPID :则是其上级父程序的IDC :CPU使用的资源百分比STIME :系统启动时间TTY :登入者的终端机位置TIME :使用掉的CPU时间。CMD :所下达的是什么指令。

lk的博客 712

linux学习

linux命令 常用命令 非root(管理员)用户百的符号会显示$,而root(管理员)用户则会显示#(代表权力至高无上) ls : 显示当前的文件夹的所有目录 mkdir innerTest : 创建一个文件夹 cd innerTest/ 进入innerTest文件夹 cd … 返回上一级文件夹 cp oralCompetiton.zip /usr/local/nginx/html/test/innerTest 复制文件到另一个文件夹 rm -rf

weixin_45480437的博客 1249

Linux一句话问答

标 题: 一句话问答(2004/03/18更新) 发信站: BBS 水木清华站 (Mon Jun 16 14:23:35 2003), 转信 (注:括号中的回答为nichloas网友提供的关于debian的回答) 2003/12/6更新,调整了部分内容的排版以方便阅读,去掉了些小错误。 2003/9/7更新,添加了nichloas网友提供的部分关于debian系统的问题,以及 对原有一些

luke_wang的专栏 1572

linux一句话问答

-------------------------------血的教训--------------------------------0001   不推荐使用"哈密瓜字体美化包",对于"哈密瓜"的其他东西也要慎重对待0002   混合系统慎用第三方分区软件,尤其是pqmagic0003   新手装Linux建议完全安装0004   没搞清"自动分区"是啥之前,不要轻易使用它0005   新手最好不

亮仔的博客 885

Linux系统与应用------一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书)

Linux系统与应用 LinuxApp 版回复帖子 发表话题 [上一篇] [下一篇] [同主题上篇] [同主题下篇]发信人: Rocktor (戒烟迎锦标), 信区: LinuxNewbie标  题: 一句话问答(2004/03/18更新)发信站: BBS 水木清华站 (Mon Jun 16 14:23:35 2003), 转信一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书) (注:括号

John.Deng的专栏 1208

linux一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书)

一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书) --------------------------目录-网络无关篇-目录-------------------------- 0001 修改主机名 0002.a Ret Hat Linux启动到文字界面(不启动xwindow) 0002.b 如何在控制台和xwindow之间切换 0003 redhat的自动升级问题 ...

weixin_34081595的博客 149

Shell | zip和unzip

Shell命令实践 在shell下使用zip和unzip命令, example ‘xxx.zip’。 Shell | zip和unzipShell命令实践zip和unzipzip压缩添加删除unzip解压缩参考链接 zip和unzip zip 压缩 某个路径下的所有文件及文件夹 zip -r /home/Desktop/xxx.zip ./* 将当前目录下所有的文件和文件夹全部压缩成xxx.zip文件并放置在/home/Desktop路径下。 -r表示递归压缩子目录下所有文件 某个路径

MissMango0820的博客 4769

Linux入门—Shell常用命令之打包压缩

本文由【正厚软件】沙老师提供打包压缩命令1. gzip&nbsp;命令·命令功能:压缩或展开文件·命令格式:ogzip&nbsp;[ -acdfhlLnNrtvV19 ] [-S 后缀] [ 文件名 ... ] :压缩文件ogunzip&nbsp;[ -acfhlLnNrtvV&nbsp;] [-S 后缀] [ 文件名 ... ] :解压缩文件ozcat&nbsp;[ -fhLV&nbsp;] [ 文件名 ... ] :解压缩文件·特点:ogzip&n

正小厚的家 1871

Shell - 常用压缩文件处理 zip、gz、tar、rar

使用 linux 工作中经常遇到 zip,gz,tar 相关的压缩文件,下面整理下几种压缩文件的常用方法。

BITDDD小栈 8195

[shell] shell脚本实现将当前目录压缩成zip文件代码示例

将当前目录打包成zip压缩包代码。

梦醒贰零壹柒 1174

Shell 命令集合 备份压缩 】Linux 提取zip压缩文件的详细信息 zipinfo命令 使用指南

zipinfo命令用于查看和提取zip压缩文件的详细信息。它可以显示压缩文件中包含的文件列表、文件的压缩比率、压缩文件的大小、压缩文件的注释等。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1300

shell命令 - zip/unzip

用途压缩/解压缩语法及描述zipzip [-dDqrS] [-b path] [zipfile [file ...]]-d : 从 压缩文件内删除指定的文件 -D : 压 缩文件内不建立目录名称 -q : 不显 示指令执行过程 -r : 递 归处理,将指定目录下的所有文件和子目录一并处理 -S : 包 含系统和隐藏文件 -<压缩效率> 压 缩效率是一个介于1-9的 数值 -b : 创建z

多媒体开发者 2万+

shell-命令之文件压缩与解压(tar、gz、zip、rar等)

【代码】shell-命令之文件压缩与解压(tar、gz、zip、rar等)

caryeko的专栏 1404
上一篇: 03. 软件包安装及管理
下一篇: 0039. shell命令--unzip
MineGi
博客等级 码龄9年 1847粉丝 · 144原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MineGi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值