将一堆拉链解压缩到自己的目录中

Ale*_*der 14 linux unzip

我有一堆zip文件,我想在Linux中解压缩到他们自己的目录中.例如:

a1.zip a2.zip b1.zip b2.zip

将解压入:

a1 a2 b1 b2

分别.有没有简单的方法来做到这一点?

gho*_*g74 14

for file in *.zip
do
  unzip -d "${file%.zip}" $file
done
Run Code Online (Sandbox Code Playgroud)

  • 这不适用于带空格的文件名.Jefromi的答案确实如此. (3认同)

Cas*_*bel 12

for zipfile in *.zip; do
    exdir="${zipfile%.zip}"
    mkdir "$exdir"
    unzip -d "$exdir" "$zipfile"
done
Run Code Online (Sandbox Code Playgroud)


Ste*_* B. 1

for x in $(ls *.zip); do
 dir=${x%%.zip}
 mkdir $dir
 unzip -d $dir $x
done
Run Code Online (Sandbox Code Playgroud)