feat: dkpurge prune / clean choice
This commit is contained in:
parent
fced53c135
commit
4acdf4fc3c
55
bin/dkpurge
55
bin/dkpurge
@ -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] "
|
||||||
|
read -r ANS
|
||||||
|
case "${ANS,,}" in
|
||||||
|
'y'|'yes'|'')
|
||||||
|
echo "$PS" | xargs docker rm 2> /dev/null
|
||||||
|
;;
|
||||||
|
'a'|'all')
|
||||||
echo "$PS" | xargs docker rm -f
|
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
|
||||||
|
'y'|'yes'|'')
|
||||||
docker image prune -f
|
docker image prune -f
|
||||||
fi
|
;;
|
||||||
|
'a'|'all')
|
||||||
|
echo "$IMG" | xargs docker image rm -f 2> /dev/null
|
||||||
|
;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user