Linux下zip压缩文件时怎样排除指定的文件?

Linux下zip压缩文件时怎样排除指定的文件?,第1张

在对某个目录进行压缩的时候,有时候想排除掉某个目录.

例如:如果123目录下有3个子目录,aa、bb、cc.我现在想只对aa和bb目录打包压缩,命令如下:

tar -zcvf 123.tar.gz  --exclude=cc 123

使用exclude参数来过滤不需要的目录或文件,排除某个文件的 *** 作和目录一样.

因为你压缩时使用的是绝对路径,而tar会保留原来的目录结构。

假如我执行的是:

[root@localhost home]#tar -zcvf test.tar.gz /home/june/*.txt

打开得到的压缩包可以看到里面包含了1.txt和2.txt的完整路径目录结构,即home/azune/june

所以如果只是日常压缩解压的话,可以用相对路径,或者直接cd到该目录下进行,假如我压缩的是/home/azune/june下的a.txt和b.txt:

cd /home/azune/june

tar -zcvf /home/azune/test.tar.gz /*.txt

那么现在 test.tar.gz 就不会包含任何目录结构了,假如我要解压到 /test 下,不管是 cd 到 /test 下再解压还是用 -C 指定解压到 /test ,在/test 下得到的文件都是 a.txt 和 b.txt

这是个人的一点小见解,仅供参考。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8992948.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存