如何解压多个目录中的 .zip 文件?
How do I unzip .zip files in multiple directories?
我的目录如下所示
./Dir1/Some file.zip
./Dir2/Some other file.zip
./UnzipFiles.sh
我想遍历 ./
中的每个目录并解压每个目录的 zip 文件。
UnzipFiles.sh
看起来像这样:
#!/bin/bash
for i in ./*/*.zip
do
cd "$i";
unzip "$i";
done
但这会将所有内容解压缩到 ./
。我希望将每个 .zip 文件的内容解压缩到包含它的目录中。
如何在 bash 中执行此操作?
我正在 cd
-ing 进入每个 .zip
文件本身。相反,我需要这样做:
#!/bin/bash
for i in ./*/
do
cd "$i";
unzip *.zip;
cd ../;
done
简单的一个衬垫可以为您节省很多时间
$ 用于 ls *.zip
中的文件;解压 $file -d echo $file | cut -d . -f 1
;完成
unzip '*.zip'
这将解压当前目录中的所有 .zip 文件。
我的目录如下所示
./Dir1/Some file.zip
./Dir2/Some other file.zip
./UnzipFiles.sh
我想遍历 ./
中的每个目录并解压每个目录的 zip 文件。
UnzipFiles.sh
看起来像这样:
#!/bin/bash
for i in ./*/*.zip
do
cd "$i";
unzip "$i";
done
但这会将所有内容解压缩到 ./
。我希望将每个 .zip 文件的内容解压缩到包含它的目录中。
如何在 bash 中执行此操作?
我正在 cd
-ing 进入每个 .zip
文件本身。相反,我需要这样做:
#!/bin/bash
for i in ./*/
do
cd "$i";
unzip *.zip;
cd ../;
done
简单的一个衬垫可以为您节省很多时间
$ 用于 ls *.zip
中的文件;解压 $file -d echo $file | cut -d . -f 1
;完成
unzip '*.zip'
这将解压当前目录中的所有 .zip 文件。