feat: dkpurge prune / clean choice

This commit is contained in:
aduhayon 2022-08-11 17:45:22 +02:00
parent fced53c135
commit 4acdf4fc3c

View File

@ -1,22 +1,7 @@
#!/bin/bash #!/bin/bash
function read_yn() {
local ANS
$ECHO -n "$1 [Y/n]"
read -r ANS
case "$ANS" in
'y'|'Y'|'Yes'|'')
return 0
;;
*)
return 1
;;
esac
}
NORMAL='\e[0m' NORMAL='\e[0m'
BOLD='\e[1m'
RED='\e[31m' RED='\e[31m'
ECHO='echo -e' ECHO='echo -e'
@ -33,28 +18,46 @@ IMG="$(docker images -q 2> /dev/null)"
if [ -n "$PS" ]; then if [ -n "$PS" ]; then
$ECHO "${RED}CONTAINERS${NORMAL}" $ECHO "${BOLD}${RED}CONTAINERS${NORMAL}"
docker ps -a docker ps -a
read_yn "Clean Containers?" && \ $ECHO -n "Prune Containers? [Y/n/a] "
echo "$PS" | xargs docker rm -f read -r ANS
case "${ANS,,}" in
'y'|'yes'|'')
echo "$PS" | xargs docker rm 2> /dev/null
;;
'a'|'all')
echo "$PS" | xargs docker rm -f
;;
esac
fi fi
if [ -n "$VOL" ]; then if [ -n "$VOL" ]; then
$ECHO "${RED}VOLUMES${NORMAL}" $ECHO "${BOLD}${RED}VOLUMES${NORMAL}"
docker volume ls docker volume ls
read_yn "Clean Volumes?" && \ $ECHO -n "Prune Volumes? [Y/n] "
echo "$VOL" | xargs docker volume rm -f read -r ANS
case "${ANS,,}" in
'y'|'yes'|'')
echo "$VOL" | xargs docker volume rm -f 2> /dev/null
;;
esac
fi fi
if [ -n "$IMG" ]; then if [ -n "$IMG" ]; then
$ECHO "${RED}IMAGES${NORMAL}" $ECHO "${BOLD}${RED}IMAGES${NORMAL}"
docker images docker images
if read_yn "Clean Images?"; then $ECHO -n "Prune Images? [Y/n/a] "
echo "$IMG" | xargs docker image rm -f read -r ANS
elif read_yn "Prune Images?"; then case "${ANS,,}" in
docker image prune -f 'y'|'yes'|'')
fi docker image prune -f
;;
'a'|'all')
echo "$IMG" | xargs docker image rm -f 2> /dev/null
;;
esac
fi fi