linux下的tar命令

tar 命令在打包的时候如果是通过绝对路径压缩打包,在不特殊参数时,解压时会在当前路径下创建打包时的路径,并提示警告:

tar: Removing leading `/' from member names

测试如下:

 1 [root@localhost ~]# tar -zcvf rsyncsh.tar.gz /home/lzn/rsync50.sh
 2 tar: Removing leading `/' from member names
 3 /home/lzn/rsync50.sh
 4 [root@localhost ~]# ls
 5 anaconda-ks.cfg  data  Desktop  Documents  Downloads  include  Music  Pictures  post-install  post-install.log  Public  rsyncd.password  rsyncsh.tar.gz  Templates  Videos
 6 [root@localhost ~]# tar -zxvf rsyncsh.tar.gz 
 7 home/lzn/rsync50.sh10 [root@localhost ~]# ls
11 anaconda-ks.cfg  data  Desktop  Documents  Downloads  home  include  Music  Pictures  post-install  post-install.log  Public  rsyncd.password  rsyncsh.tar.gz  Templates  Videos
12 [root@localhost ~]# ls -R home/
13 home/:
14 lzn
15 
16 home/lzn:
17 rsync50.sh

使用特殊参数 -P可以在压缩的时候直接把'/'压缩进去,解压的时候直接解压到压缩是的绝对路径。

使用特殊参数-C可以指定解压到那个路径。

原文地址:https://www.cnblogs.com/weiji100/p/3952928.html