ubuntu将多个.tar.gz文件解压缩到新目录

时间:2011-03-03 07:17:04

标签: linux ubuntu

我在一个文件夹中有大约200,000个拇指,这些拇指都是以.tar.gz结尾的gzip压缩文件 我要做的是提取该文件夹中的所有文件,但提取到另一个文件夹。有谁知道这样做的命令?我在网上找到了这个,但我不知道怎么用它来提取到另一个文件夹。

for i in *.tar.gz; do tar -xvzf $i; done

4 个答案:

答案 0 :(得分:27)

添加-C选项以选择目标目录:

for i in *.tar.gz; do tar xvzf $i -C path/to/output/directory; done

答案 1 :(得分:4)

现在你正在使用

tar

提取所有文件。我相信你可以设置输出到哪个目录。

这将是这样的:

for i in *.tar.gz; do tar -xvzf $i -C directory; done

其中directory是要将文件解压缩到的文件夹的路径。

请参阅http://www.computerhope.com/unix/utar.htm(关于焦油的文档)。

答案 2 :(得分:2)

actdir=`pwd`
for files in *tar.gz ; do
  filedir=`basename $files .tar.gz`
  mkdir $filedir 
  cd $filedir
  tar -xzf ../$files
  cd $actdir
done

HTH

答案 3 :(得分:2)

-C选项可能更好。你也可以这样做:

  

$ mkdir / path / to / newfolder
  $ for for in * .tar.gz; do files =“$ files $(readlink -f $ i)”;完成#构建文件名的绝对列表
  $ cd / path / to / newfolder
  $ for $ in $ files;做tar -zxvf $ i;完成