小编Tw1*_*w1x的帖子

for 循环目录到 zip 子目录

我的问题很简单,但自从我上次阅读 bash 脚本以来已经太久了,所以我再也无法理解 bash 了......

我有一个文件夹(名称包含空格),其中有 x 个子文件夹。现在我想将每个子文件夹压缩到其自己的 zip 存档中。

以下脚本是我所拥有的:

#!/bin/bash
cd $1
for folder in $1/* do
zip -r "${folder%/}" "${folder%/}"
done
Run Code Online (Sandbox Code Playgroud)

每次我尝试执行它时./test.sh .我都会得到

./test.sh: line 4: syntax error near unexpected token `zip'
./test.sh: line 4: `zip -r "${folder%/}" "${folder%/}"'
Run Code Online (Sandbox Code Playgroud)

我的想法出了什么问题,为什么?

如果我file="subfolder i want to zip"在 shell 中输入一个变量(例如)并执行zip -r "${file}" "${file}"它,它对于一个文件夹就可以正常工作。

我感谢任何帮助,并希望我的问题能够轻松解决(这样我就能理解它)。预先非常感谢。

bash for-loop

3
推荐指数
1
解决办法
3834
查看次数

标签 统计

bash ×1

for-loop ×1