【发布时间】:2021-08-30 07:12:33
【问题描述】:
我的目录是这样的
./Dir1/Some file.zip
./Dir2/Some other file.zip
./UnzipFiles.sh
我想遍历./ 中的每个目录并解压缩每个目录。
UnzipFiles.sh 看起来像这样:
#!/bin/bash
for i in ./*/*.zip
do
cd "$i";
unzip "$i";
done
但这会将所有内容解压缩到./。我希望将每个 .zip 文件的内容解压缩到包含它的目录中。
如何在 bash 中执行此操作?
【问题讨论】:
-
如果您将
echo "#dbg:i=$i"添加到您的for循环中并注释掉其他代码,您将看到您的问题。祝你好运。 -
@shellter 这告诉我
"$i"实际上是.zip文件,而不是目录。谢谢。