如何将一个子目录解压到当前目录中?
如何将tarball中的子目录提取到当前目录中?
例如, wordpress的tarball:
wordpress/ wordpress/wp-trackback.php wordpress/wp-config-sample.php wordpress/wp-settings.php wordpress/wp-rss2.php wordpress/readme.html wordpress/index.php ...
我如何提取wordpress/
到当前目录下的所有内容? 换句话说,它不会创build一个wordpress
目录。
我已经试过这个没有运气:
tar xvfz latest.tar.gz wordpress -C ./
我知道我可以正常提取它并将其移回,但我认为必须有一种方法可以一次完成。
为什么你不正常解压,那么只是:
mv wordpress/.* . mv wordpress/* . rmdir wordpress
但是,唉,有:
tar --strip-components=1 -zxvf wordpress.tgz
令人惊讶的是,我的tar
(GNU tar v1.16)没有选项去除初始path名元素。
但是,似乎更新的版本会包含一个--strip-components=number
参数,这会从path的开头剥离许多组件。
如果像我一样,你使用的是较老的tar
,而且你确信这个档案没有包含一个名为wordpress/wordpress
的目录或者文件,你可以随时在wordpress
build立一个符号链接.
,然后照常提取:
ln -s . wordpress tar xvfz latest.tar.gz wordpress rm wordpress