一、问题描述
现在有一个需求,不知道该如何才能实现
压缩: tar czvf /data/backup/test.tar.gz /data/a/b/directory
解压:
cd /data/test
tar xzvf /data/backup/test.tar.gz
问题是,解压后的文件,在/data/test/data/a/b/directory里面
能否压缩时只保留directory以下的所有目录,以directory作为/,而不是/data/a/b/directory?
二、解决方案
(1)直接cd到当前目录再进行打包和压缩
(2)使用-C参数
GNU tar的官方资料
http://www.delorie.com/gnu/docs/tar/tar_98.html
这样写就可以解决了
tar czvf /data/backup/test.tar.gz /data/a/b/directory
改成
tar czvf /data/backup/test.tar.gz -C /data/a/b directory
-C是临时切换工作目录,-P是绝对路径,在这里只用到-C参数就行了
本文介绍如何使用tar命令仅压缩并保留指定目录下的子目录及文件,而不包含父目录路径,通过使用-C参数实现了目标,提供了解决方案及详细步骤。
6654

被折叠的 条评论
为什么被折叠?



