linux zip 命令


zip命令:

zip命令是压缩和文件打包的工具,unzip是解压的命令。

zip命令将一个或多个文件压缩成一个zip文件(文件大于4G时zip64默认后缀),整个目录也可以被压缩到一个文件中。text文件的压缩比例是2:1或3:1。

ZIPOPT环境变量
执行zip时会调用ZIPOPT的环境变量,如果我们想定制一些操作可以将ZIPOPT加载到当前环境变量中。

ZIPOPT="-D"; export ZIPOPT

zip语法格式:

 

zip options archive inpath inpath ...

当给定的压缩文件名字存在于磁盘上,zip会替换掉旧的文件,例如test.zip包中有 test/file1,test/file2.当前目录test中有test/file1,test/file3当我们执行”zip -r test.zip test”时,test/file1会被覆盖掉,、tesst/file2不变,test/file3追加到test.zip中.

-@ 搭配zip命令使用,zip会对标准输入的文件列表进行打包,而不是命令行中。同find 命令搭配起来很有用。

[root@node1 ~]# find ./ -name "*.txt"|zip test.zip -@
  adding: test.txt (deflated 63%)
  adding: rpm.txt (deflated 70%)
  adding: yum.txt (deflated 71%)
  adding: yumcfg.txt (deflated 67%)
  adding: top.txt (deflated 69%)
  adding: yumconfig.txt (deflated 67%)
  adding: yumtools.txt (deflated 63%)
  adding: pkg_cl.txt (deflated 63%)
  adding: repoquery.txt (deflated 66%)
  adding: installed.txt (deflated 31%)
  adding: reposync.txt (deflated 63%)
  adding: repotrack.txt (deflated 62%)
  adding: yumdownloader.txt (deflated 60%)
  adding: 1.txt (deflated 67%)
  adding: bash.txt (deflated 73%)
  adding: tar.txt (deflated 69%)
  adding: tarinfo.txt (deflated 69%)
  adding: find.txt (deflated 70%)
  adding: cpio.txt (deflated 67%)
  adding: zip.txt (deflated 69%)

  

常用选项

-d从zip文件中删除文件

zip -d foo foo/tom/junk foo/harry//* /*.o

  

-i  –include files 只压缩指定的文件

zip -r foo . -i /*.c

 

-m 压缩之后删除指定的文件
-r 递归目录
 

zip -r foo.zip foo

-R 按照指定模式递归当前目录

zip -R */bar.c

 
-u 如果文件有更新,那么更新压缩包里的文件。

zip -u stuff *

 
-x –exclude files 排除指定的文件

zip -r foo foo -x /*.o /*.c

  

原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/271725.html

(0)
上一篇 2022年7月6日
下一篇 2022年7月6日

相关推荐

发表回复

登录后才能评论