从Shell脚本检查目录是否包含文件

从shell脚本中,如何检查目录是否包含文件?


与此类似


if [ -e /some/dir/* ]; then echo "huzzah"; fi;

但如果目录包含一个或多个文件,则该方法有效(以上一个仅适用于0或1个文件)。


皈依舞
浏览 2159回答 3
3回答

守着一只汪

怎么样:if find /some/dir/ -maxdepth 0 -empty | read v; then echo "Empty dir"; fi这样,就无需生成目录内容的完整列表。该read既是丢弃输出,使表达时,才读一些评估为真(即/some/dir/被发现空find)。

慕虎7371278

到目前为止,使用的解决方案ls。这是一个全bash解决方案:#!/bin/bashshopt -s nullglob dotglob     # To include hidden filesfiles=(/some/dir/*)if [ ${#files[@]} -gt 0 ]; then echo "huzzah"; fi
打开App,查看更多内容
随时随地看视频慕课网APP