Linux打包命令tar的解压路径问题

Linux中常用的解压缩命令
tar  # 压缩和解压命令

通常的使用方法是

tar cvzf /home/user/somename.tar foldername # 将foldername文件夹下的内容都压缩到指定位置/home/user下,打包成名叫somename.tar的压缩文件

解压方法是

tar xzvf somename.tar  # 将somename.tar文件解压到当前执行命令所在目录

解压后的路径就是压缩式的路径,会自动生成 foldername这个文件夹,如果文件夹存在,就不会重新生成,但压缩文件内存在的新的内容会覆盖旧的内容,意思是文件夹下老的文件,但tar包里没有涉及到的不会覆盖,增量部署代码通常可以用直接在目录解压文件的方式


注意: 如果压缩时压缩文件的路径是 folder1/folder2/** 那解压出来也会在 当前路径 创建 folder1/folder2,总之压缩时是什么目录层级,解压时在当前目录也是一样的目录结构

当被压缩文件是绝对路径是,会报一个错误:tar: 从成员名中删除开头的“/”

这是因为被压缩文件写了绝对路径,例如如下命令

tar cvzf /home/user/somename.tar /foldername

这种情况需要加参数P(大写),就不会抱错,如下:

tar cPvzf /home/user/somename.tar /foldername

但实际上压缩时仍然删除了‘/’,所以解压出来并不是从根目录开始解压,不会在根目录创建foldername文件夹,仍然是在 当前路径 下创建了foldernam目录


如果只想压缩文件,不想创建文件夹,可以进入到被压缩文件内执行命令

tar czvf /home/user/somename.tar *

这样就压缩当前文件夹下的所有内容,并把压缩文件保存到/home/user/目录下






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值