shell脚本中在for循环内判断目录是否存在不存在则创建目录,不管创建不创建目录都进行for循环的后续操作
时间: 2023-03-04 12:33:50 浏览: 128
shell脚本判断文件夹或目录是否存在,不存在则创建新文件夹或目录.sh
5星 · 资源好评率100%
您可以在for循环内使用条件语句来检查目录是否存在,如果不存在则创建目录。无论目录是否存在,您都可以继续进行for循环后续操作。
以下是一个示例脚本,用于循环遍历当前目录下的所有文件,并在需要时创建目录:
```bash
#!/bin/bash
for file in *; do
# 检查当前项是否为目录
if [ -d "$file" ]; then
echo "Processing directory: $file"
# 检查目录是否存在,如果不存在则创建目录
if [ ! -d "$file/newdir" ]; then
mkdir "$file/newdir"
echo "Created directory: $file/newdir"
fi
# 进入新目录并执行一些操作
cd "$file/newdir"
# do something...
cd ..
else
echo "Processing file: $file"
# do something...
fi
done
```
在此示例中,如果当前项是一个目录,脚本会检查该目录是否存在`newdir`子目录。如果`newdir`子目录不存在,则脚本会在当前目录下创建一个新的子目录。然后,脚本会进入`newdir`子目录并执行一些操作,然后返回到上一级目录。如果当前项不是一个目录,则脚本会直接执行某些操作。无论目录是否已经存在,for循环都会继续进行,直到处理完所有的文件和目录。
阅读全文