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 **/
ただし、これを行うと、多くのエラーメッセージが表示されます(空でないフォルダごとに1つずつ)。