从shell脚本中,如何检查目录是否包含文件?与此类似if [ -e /some/dir/* ]; then echo "huzzah"; fi;但如果目录包含一个或多个文件,则该方法有效(以上一个仅适用于0或1个文件)。
3 回答

守着一只汪
TA贡献1872条经验 获得超3个赞
怎么样:
if find /some/dir/ -maxdepth 0 -empty | read v; then echo "Empty dir"; fi
这样,就无需生成目录内容的完整列表。该read既是丢弃输出,使表达时,才读一些评估为真(即/some/dir/被发现空find)。

慕虎7371278
TA贡献1802条经验 获得超4个赞
到目前为止,使用的解决方案ls。这是一个全bash解决方案:
#!/bin/bash
shopt -s nullglob dotglob # To include hidden files
files=(/some/dir/*)
if [ ${#files[@]} -gt 0 ]; then echo "huzzah"; fi
- 3 回答
- 0 关注
- 2171 浏览
添加回答
举报
0/150
提交
取消