find
command 을 사용하지 않고 빈 디렉토리를 삭제하고 싶습니다 find . -empty -type d -delete
. 이와 같이:
if [ "$(ls -d *)" ]; then
echo "Not Empty"
else
echo "Delete"
fi
만 사용하여 빈 디렉토리를 어떻게 삭제할 수 있습니까 ls
?
답변1
rmdir
빈 폴더는 삭제되고(다른 폴더는 남아 있음) 다음과 같은 방법을 사용할 수 있습니다.
rmdir */
또는 bash 4+를 사용하고 있고 재귀를 원하는 경우(다른 쉘에는 동일한 이름이 있습니다):
shopt -s globstar
rmdir **/
그러나 이렇게 하면 많은 오류 메시지가 표시됩니다(비어 있지 않은 폴더마다 하나씩).