linux tar解压文件至指定目录,不包含原目录

1、tar解压文件至指定目录,不包含原目录

要解压的压缩包原目录结构如下
在这里插入图片描述

通过 --strip-components 1 参数 解压到指定目录或当前目录(不含打包前原目录)

 tar zxf log.tar.gz --strip-components 1 -C /opt/new_test

注: --strip-components 1 解压至下一级目录,若为2则解压至下下级目录

2、压缩只指定的目录,不包含原目录
前提:未压缩之前的目录如下:
/opt/test/111.log
/opt/test/222.log
/opt/test/333.log

我们将test目录中的文件压缩至指定目录new_test,但不包含原目录test
(需要进入test目录执行压缩命令)

tar -cvzf log.tar.gz *
tar -xvzf log.tar.gz -C /opt/new_test/

在这里插入图片描述

3、采用–exclude排除某个目录或文件不打包
#两者等价,排除111.log文件进行压缩

tar cvzf log.tar.gz /opt/web/test/ --exclude=/opt/web/test/111.log
tar cvzf log.tar.gz test/ --exclude=test/111.log

tar -zvcf a.tar.gz 打包的目录 --exclude=指定排除的文件所在的路径 注:“打包的目录”会在包含于压缩包

总结:
1、tar命令下的–exclude后面可以跟”=“或者空格,效果一样。
2、tar命令下的–exclude后面跟文件名,会排除所有和此名相同的文件。
3、tar命令下的–exclude后面跟排除文件的路径为绝对路径的时候,打包路径也必须为绝对路径。
4、tar命令下的–exclude后面跟排除文件的路径为相对路径的时候,打包路径为相对或者绝对路径都可以。
5、tar命令下的–exclude-from后面排除文件里的路径为绝对路径的时候,打包路径也必须为绝对路径。
6、tar命令下的–exclude-from后面排除文件里的路径为相对路径的时候,打包路径为相对或者绝对路径都可以。

  • 3
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值