免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7664 | 回复: 6
打印 上一主题 下一主题

请教tar解压到其他目录的语法 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-07 17:02 |只看该作者 |倒序浏览
比如,原来我在111目录下tar了一个包,一般是考到另外机器的111目录下,然后直接tar出来,但目前由于111目录空间不足,考到111目录下的话就没有足够空间解了,想考到其他目录下,解到111目录,有什么参数吗

网上查的-C参数不行的,请大侠指点啊!

论坛徽章:
0
2 [报告]
发表于 2008-07-07 18:49 |只看该作者
好像有点问题哦,我给你一点参考。
-----------------------------------------------------------------------------------
root:/tmp/tar#tar cvf 1.tar test*   (tar创建文件的时候没有制定要创建文件的绝对路径,那么创建的tar文件只会解压到当前目录)
a test/22 9 blocks
a test.com 2 blocks
a test.conf 9 blocks
root:/tmp/tar#ll
total 80
-rw-rw-rw-   1 root       sys          20480 Jun 23 16:26 1.tar
drwxrwxrwx   2 root       sys             96 Jun 23 16:24 test
-rw-rw-rw-   1 root       sys            678 May 19 17:19 test.com
-rwxr--r--   1 root       sys           4305 May 23 17:04 test.conf
root:/tmp/tar#rm -rf test*
root:/tmp/tar#ll
total 48
-rw-rw-rw-   1 root       sys          20480 Jun 23 16:26 1.tar
root:/tmp/tar#tar xvf 1.tar
x test/22, 4505 bytes, 9 tape blocks
x test.com, 678 bytes, 2 tape blocks
x test.conf, 4305 bytes, 9 tape blocks
root:/tmp/tar#ll
total 80
-rw-rw-rw-   1 root       sys          20480 Jun 23 16:26 1.tar
drwxrwxrwx   2 root       sys             96 Jun 23 16:26 test
-rw-rw-rw-   1 root       sys            678 May 19 17:19 test.com
-rwxr--r--   1 root       sys           4305 May 23 17:04 test.conf

-------------------------------------------------------------------
root:/tmp/tar#ll
total 32
drwxrwxrwx   2 root       sys             96 Jun 13 14:54 test
-rw-rw-rw-   1 root       sys            678 May 19 17:19 test.com
-rwxr--r--   1 root       sys           4305 May 23 17:04 test.conf
root:/tmp/tar#tar cvf 1.tar /tmp/tar/test*(指定具体目录,解压的tar包便会创建在该目录)
a /tmp/tar/test/22 9 blocks
a /tmp/tar/test.com 2 blocks
a /tmp/tar/test.conf 9 blocks
root:/tmp/tar#rm test*
rm: test directory
root:/tmp/tar#rm -rf test*
root:/tmp/tar#ll
total 48
-rw-rw-rw-   1 root       sys          20480 Jun 23 16:30 1.tar
root:/tmp/tar#tar xvf 1.tar
x /tmp/tar/test/22, 4505 bytes, 9 tape blocks
x /tmp/tar/test.com, 678 bytes, 2 tape blocks
x /tmp/tar/test.conf, 4305 bytes, 9 tape blocks
root:/tmp/tar#ll
total 80
-rw-rw-rw-   1 root       sys          20480 Jun 23 16:30 1.tar
drwxrwxrwx   2 root       sys             96 Jun 23 16:31 test
-rw-rw-rw-   1 root       sys            678 May 19 17:19 test.com
-rwxr--r--   1 root       sys           4305 May 23 17:04 test.conf
--------------------------------------------------------------------------
tar cf - .|(cd /tmp/tar2;tar xvf -)将当前目录拷贝到另外一个目录.

论坛徽章:
0
3 [报告]
发表于 2008-07-07 18:56 |只看该作者
不过最简单的方法是,你在其他目录解压好,比如/tmp/test
#tar xvf 111.tar   (假定你解压后的文件目录为222)
然后执行:
#cp -rp /tmp/test/222/*  /?/111/.
即可,或者在222目录下
#tar cvf - .|(cd /?/111;tar xvf -)
都可以的。

-------------------
仅供楼主参考,我也是菜鸟

论坛徽章:
0
4 [报告]
发表于 2008-07-08 10:43 |只看该作者
感谢2,3楼的!B4四楼的,明显灌水

论坛徽章:
0
5 [报告]
发表于 2008-08-05 22:47 |只看该作者
直接到其他目录tar xvf就可以了。

论坛徽章:
0
6 [报告]
发表于 2008-08-06 08:12 |只看该作者
对阿,很简单吗,到另外一个目录tar
然后靠到另一服务器的另一目录在tar到111下就ok了,就是看你怎么写路径吗

论坛徽章:
0
7 [报告]
发表于 2009-12-19 20:08 |只看该作者
首先理解绝对路径和相对路径的问题,可以从创建包 --> 解包来说明:
创建包(例子中切换到/etc目录,然后将/etc/下的所有文件以相对路径创建到tar包):在创建tar包的时候是以绝对路径还是相对路径决定了在解包的时候是以什么方式解包. Note: 如果是以绝对路径创建tar包,在解包的时候就有覆盖此路径下的文件的风险
cd /etc   tar -cvf /bk.tar .
Or
tar -cvf bk.tar -C /etc .


解包:
cd /home
tar -xvf /bk.tar
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP