"ls"コマンドを使用して空のディレクトリを削除する

findcommandを使わずに空のディレクトリを削除したいと思います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つずつ)。

おすすめ記事