我想删除空目录而不使用find
命令find . -empty -type d -delete
。像下面这样:
if [ "$(ls -d *)" ]; then
echo "Not Empty"
else
echo "Delete"
fi
如何仅使用删除空目录ls
?
答案1
rmdir
将删除空文件夹(同时保留其他文件夹),因此您可以使用类似以下内容的内容:
rmdir */
或者,如果您使用的是 bash 4+ 并且您想要递归性(其他 shell 对同一事物有其他名称):
shopt -s globstar
rmdir **/
但是,这会给您带来很多错误消息(每个非空文件夹都有一个错误消息)。