“tar -xzf”用于目录中的许多“tar.gz”文件

“tar -xzf”用于目录中的许多“tar.gz”文件

我在一个目录中有很多文件。每个文件都有不同的名称:

one.tar.gz
juk.tar.gz
cv.tar.gz
erf.tar.gz
vcx.tar.gz
cxcd.tar.gz
vc.tar.gz
jkjk.tar.gz
zxc.tar.gz
asd.tar.gz
ghj.tar.gz
kll.tar.gz
qwe.tar.gz

逐个提取非常耗时。所以我想使用一个命令提取所有文件。我试过了,tar -xzf *但没有用

答案1

使用findmojo:

find . -maxdepth 1 -type f -iname '*.tar.gz' -exec tar xzf '{}' \;

答案2

预计不会起作用,因为tar -xzf *.tar.gz在您的案例中会扩展为tar -xzf one.tar.gz juk.tar.gz cv.tar.gz ...这意味着枪械 one.tar.gzjuk.tar.gz并从中提取名为、等的文件cv.tar.gz。这显然不是您想要的。

您必须对所有 tar.gz 文件进行循环才能提取它们。

例如:

for f in *.tar.gz ; do tar -xzf $f ; done

答案3

for i in *.tar.gz
do tar -xzf $i
done

会很好用

答案4

ls *.tar.gz | xargs -n 1 tar -xzf

相关内容