温馨提示×

centos extract能批量吗

小樊
55
2026-09-06 04:53:33
栏目: 智能运维

在 CentOS(以及一般的 Linux)里,“extract”本身不是一个固定命令,通常你指的是解压/提取文件(比如 tarunzip7z 等)。

简单回答:可以批量解压,下面按常见情况说明。


一、批量解压 tar / tar.gz / tar.bz2

当前目录下所有 tar 包

for f in *.tar; do
  tar xf "$f"
done

所有 tar.gz

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

所有 tar.bz2

for f in *.tar.bz2; do
  tar xjf "$f"
done

二、批量解压 zip

如果没装 unzip

yum install -y unzip

批量解压:

for f in *.zip; do
  unzip "$f"
done

三、批量解压到各自独立目录(推荐)

避免文件混在一起:

for f in *.tar.gz; do
  d="${f%.tar.gz}"
  mkdir -p "$d"
  tar xzf "$f" -C "$d"
done

四、用 find 批量解压(含子目录)

find . -name "*.tar.gz" -exec tar xzf {} \;

或解压到同名目录:

find . -name "*.zip" | while read f; do
  d="${f%.zip}"
  mkdir -p "$d"
  unzip "$f" -d "$d"
done

五、并行批量解压(提速)

ls *.tar.gz | xargs -P 4 -I {} tar xzf {}

-P 4 表示 4 个并行任务。


六、常见坑提醒

  • 文件名有空格:一定用 "$f"
  • 不同压缩格式不能用同一个命令
  • CentOS 7 默认可能没装 unzip / p7zip

如果你说的是 某个具体工具叫 extract(比如脚本、软件、Python 库),可以把命令或上下文发我,我可以更精准回答。

0