tar 命令压缩时报错 tar: Removing leading `/' from member names
在使用tar命令进行压缩打包的时候我们常常会遇到下面的错误。虽然它不会影响我们最后的压缩打包,但是间接说明了我们的命令是有问题的。接下来我们来看看解决的方法。
报错内容:
[root@haha ~]#tar -czf /root/ss3.tat.gz /root/ss2
tar: Removing leading `/' from member names
意思就是让我们将路径的 ‘/’ 去除掉。
问题原因:
因为我们使用的是绝对路径,而不是相对路径。而tar 命令默认是采用相对路径来进行压缩打包的。
解决办法:
我们需要使用参数 -P(大写)来允许我们使用绝对路径进行压缩打包。
-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
注意网上有些文档是 将 -P
参数加在 f 参数后面,那么这样是会报错的。
错误示例:
[root@haha ~]# tar -czfP /root/44tar.gz /root/ss2
tar: Removing leading `/' from member names
tar: /root/44/tar.gz: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
一般是将 f 参数放到最后,-f
参数后面接上文件名 , 将 P 放在 f前即可。
-f<备份文件>或--file=<备份文件>:指定备份文件;
正确实例:
tar -czPf /root/44.tar.gz /root/ss2
在使用tar命令的时候要注意 f 参数的位置。避免错误。