Linux中tar命令打包路径相关问题

✍️Auth:star皆空       Date:2022/06/1       Cat:Linux服务器       👁️:963 次浏览

tar简介

linux系统中常见的压缩包格式有:.tar.gz 、.tar、 .gz、 .tgz、 .zip …

在linux系统中tar可以将多个文件打包在一起,表示压缩

在linux系统中tar可以将打包文件解压成普通文件,表示解压

命令用法:tar 可选项参数 压缩文件名称 需要打包文件

可选项参数
-z  通过gzip压缩或解压
-c  创建新的tar包
-v  显示详细的tar命令的执行过程
-f  指定压缩文件的名称
-x  解开tar包
-C  解压的目录路径
-p  保持文件的原有属性
-h  打包软链接文件指向真实的源文件

最常用命令参数使用:tar -zxvf 解压,tar -zcvf 压缩。

问题描述:

tar命令打包绝对路径的问题。

直接tar -zcvf打包,解压后会发现整个路径也都⼀起打包进去了,如打包/home/ubuntu/www/web 目录.

tar -zcvf web.tar.gz  /home/ubuntu/www/web

打包后,移到其他机器tar -zxvf解压到/var/www目录,最终路径为
/var/www/home/ubuntu/www/web 目录。而我想得到的其实是 /var/www/web目录。

解决方法:

有两点,1:-C参数(大写),指定目录。2:最终路径与前面路径有一个空格。


例子:www/ 和web直接有1空格.

tar -zcvf /user/web.tar.gz -C /home/ubuntu/www/ web


移到后,解压到任意位置,只得到web/此路径文件夹。

发表评论