30 lines
603 B
Bash
30 lines
603 B
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
|
|
cd "$SCRIPT_DIR"
|
||
|
|
|
||
|
|
mapfile -t dirs < <(find . -maxdepth 1 -mindepth 1 -type d | sort)
|
||
|
|
|
||
|
|
if [[ ${#dirs[@]} -eq 0 ]]; then
|
||
|
|
echo "Nessuna cartella da cancellare."
|
||
|
|
exit 0
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "Cartelle che verranno cancellate:"
|
||
|
|
for d in "${dirs[@]}"; do
|
||
|
|
echo " $d"
|
||
|
|
done
|
||
|
|
|
||
|
|
if [[ "${1:-}" != "-f" ]]; then
|
||
|
|
read -r -p "Confermi? [s/N] " answer
|
||
|
|
[[ "$answer" =~ ^[sS]$ ]] || { echo "Annullato."; exit 0; }
|
||
|
|
fi
|
||
|
|
|
||
|
|
for d in "${dirs[@]}"; do
|
||
|
|
rm -rf "$d"
|
||
|
|
echo "Rimossa: $d"
|
||
|
|
done
|
||
|
|
|
||
|
|
echo "Pulizia completata."
|