shell脚本判断目录非空
时间: 2024-10-07 09:00:24 浏览: 32
Shell脚本IF条件判断和判断条件总结
要编写shell脚本来判断一个目录是否非空,你可以参考这两个示例:
1. 判断目录是否为空并打印相应的消息[^1]:
```bash
#!/bin/bash
echo "----------$(date +%Y年%m月%d日' '%T)测试(test.sh)----------"
BAK=/opt/sh/test
# 使用`ls -A`列出目录下所有内容(包括隐藏文件),如果为空,则执行相应操作
if [ -n "`ls -A ${BAK}`" ]; then
echo "${BAK} is not empty"
else
echo "${BAK} is empty"
fi
echo "----------$(date +%Y年%m月%d日' '%T)测试(test.sh)----------"
```
2. 先检查目录是否存在,不存在则创建,存在则确认[^2]:
```bash
#!/bin/bash
dir="test"
# 检查目录是否存在,不存在则创建
if [ ! -d $dir ]; then
echo "$dir does not exist, creating..."
mkdir "$dir"
else
echo "$dir already exists!"
fi
```
在这个脚本中,`-d`选项用于检测路径是否指向一个存在的目录。如果`ls -A`返回的内容不为空(即`-n`选项下的条件为真),则说明目录不是空的。
阅读全文