誤って作成されたフォルダーがいくつかあります。これらのフォルダーを削除したいと思います。
¬ 636
¬ 636.empty
¬ 637
¬ 638.empty
¬ 639
¬ 639.empty
636.empty
このような状況では、残っている空でないフォルダーを削除してそのままにしておきます。
ターミナルコマンドを実行した後、フォルダー内のすべてのフォルダーsister
を削除したいと思います。
¬ 636
¬ 637
¬ 638.empty
¬ 639
削除されるフォルダーは次のようになります:
¬ 636.empty
¬ 639.empty
25,000
いくつかのフォルダがあり、おそらく1000
これらはempty
フォルダと重複しています
答え1
名前が付けられたすべてのディレクトリをループし*empty
、同じディレクトリが.empty
存在するかどうかを確認し、存在する場合は削除します。
for d in *.empty; do
[ -d "$d" ] && [ -d "${d%.empty}" ] && rmdir "$d"
done
ディレクトリ名にかかわらずディレクトリが空でない場合は、rmdir
に置き換えます;-)rm -rf
代替案find
:
find -maxdepth 1 -type d -name '*.empty' \
-exec sh -c '[ -d "${1%.empty}" ]' find-sh {} \; \
-delete
ディレクトリが空でない場合は、-delete
に置き換えます。-exec rm -rf {} \;