從shell腳本中,如何檢查目錄是否包含文件?與此類似if [ -e /some/dir/* ]; then echo "huzzah"; fi;但如果目錄包含一個或多個文件,則該方法有效(以上一個僅適用于0或1個文件)。
3 回答

守著一只汪
TA貢獻1872條經驗 獲得超4個贊
怎么樣:
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 關注
- 2200 瀏覽
添加回答
舉報
0/150
提交
取消