首页 > 解决方案 > 使用 Linux 终端将位于不同目录中的多个文件解压缩到单个目录

问题描述

尝试使用 linux 终端解压缩位于不同目录中的多个文件,并将提取的输出放在一个定义的目录中。

 /Dir 0
 /Dir 1
--Dir A
  zip1.zip
  zip2.zip
--Dir B
  zip3.zip
  zip4.zip
--Dir C
  zip5.zip
  zip6.zip
 /Dir 2
--Dir AA
  zip1.zip
  zip2.zip
--Dir BB
  zip3.zip
  zip4.zip
--Dir CC
  zip5.zip
  zip6.zip

标签: bashgzipunzip

解决方案


使用and的 globstar globbing的-d标志:unzipbash

shopt -s globstar
for z in **/*.zip; do unzip -d output-dir "$z"; done

推荐阅读