feat: optimized dkprune -c/-C
This commit is contained in:
parent
b3b3435a9e
commit
6697d0a9a4
@ -30,12 +30,12 @@ function add_opt() {
|
|||||||
echo "$RESULT"
|
echo "$RESULT"
|
||||||
}
|
}
|
||||||
|
|
||||||
if ! [ -w "/var/run/docker.sock" ] && [ "$EUID" != 0 ]; then
|
if ! [ -w '/var/run/docker.sock' ] && [ "$EUID" != 0 ]; then
|
||||||
exec sudo -- "$0" "$@"
|
exec sudo -- "$0" "$@"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
c=1
|
c=1
|
||||||
C=2
|
# C=2
|
||||||
v=4
|
v=4
|
||||||
i=8
|
i=8
|
||||||
# I=16
|
# I=16
|
||||||
@ -52,7 +52,8 @@ while getopts hcCviIna o; do
|
|||||||
CLEAN="$(add_opt "$CLEAN" "$c")"
|
CLEAN="$(add_opt "$CLEAN" "$c")"
|
||||||
;;
|
;;
|
||||||
C)
|
C)
|
||||||
CLEAN="$(add_opt "$CLEAN" "$C")"
|
CLEAN="$(add_opt "$CLEAN" "$c")"
|
||||||
|
CON_OPT="-f"
|
||||||
;;
|
;;
|
||||||
v)
|
v)
|
||||||
CLEAN="$(add_opt "$CLEAN" "$v")"
|
CLEAN="$(add_opt "$CLEAN" "$v")"
|
||||||
@ -62,14 +63,15 @@ while getopts hcCviIna o; do
|
|||||||
;;
|
;;
|
||||||
I)
|
I)
|
||||||
CLEAN="$(add_opt "$CLEAN" "$i")"
|
CLEAN="$(add_opt "$CLEAN" "$i")"
|
||||||
IMG_OPT="-a"
|
IMG_OPT='-a'
|
||||||
;;
|
;;
|
||||||
n)
|
n)
|
||||||
CLEAN="$(add_opt "$CLEAN" "$n")"
|
CLEAN="$(add_opt "$CLEAN" "$n")"
|
||||||
;;
|
;;
|
||||||
a)
|
a)
|
||||||
CLEAN="$(add_opt "$CLEAN" "$c" "$C" "$v" "$i" "$n")"
|
CLEAN="$(add_opt "$CLEAN" "$c" "$v" "$i" "$n")"
|
||||||
IMG_OPT="-a"
|
CON_OPT="-f"
|
||||||
|
IMG_OPT='-a'
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
exit 1
|
exit 1
|
||||||
@ -78,32 +80,30 @@ while getopts hcCviIna o; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
if [ "$CLEAN" == 0 ]; then
|
if [ "$CLEAN" == 0 ]; then
|
||||||
CLEAN="$((C + v + n))"
|
CLEAN="$((c + v + n))"
|
||||||
|
CON_OPT="-f"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VALUES=(
|
VALUES=(
|
||||||
"$((c + i + v + n))"
|
"$((c + i + v + n))"
|
||||||
"$((c + i + n))"
|
"$((c + i + n))"
|
||||||
"$c"
|
|
||||||
"$v"
|
"$v"
|
||||||
"$i"
|
"$i"
|
||||||
"$n"
|
"$n"
|
||||||
)
|
)
|
||||||
|
|
||||||
CON="container"
|
CON='container'
|
||||||
PRUNE="prune -f"
|
PRUNE='prune -f'
|
||||||
COMMANDS=(
|
COMMANDS=(
|
||||||
"docker system $PRUNE $IMG_OPT --volumes"
|
"docker system $PRUNE $IMG_OPT --volumes"
|
||||||
"docker system $PRUNE $IMG_OPT"
|
"docker system $PRUNE $IMG_OPT"
|
||||||
"docker $CON $PRUNE"
|
|
||||||
"docker volume $PRUNE"
|
"docker volume $PRUNE"
|
||||||
"docker image $PRUNE $IMG_OPT"
|
"docker image $PRUNE $IMG_OPT"
|
||||||
"docker network $PRUNE"
|
"docker network $PRUNE"
|
||||||
)
|
)
|
||||||
|
|
||||||
if [ "$((CLEAN & "$C"))" == "$C" ]; then
|
if [ "$((CLEAN & "$c"))" == "$c" ]; then
|
||||||
docker "$CON" ls -aq | xargs docker "$CON" stop 2> /dev/null
|
docker "$CON" ls -aq | xargs docker "$CON" rm "$CON_OPT" 2> /dev/null
|
||||||
CLEAN="$(add_opt "$CLEAN" "$c")"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for idx in "${!VALUES[@]}"; do
|
for idx in "${!VALUES[@]}"; do
|
||||||
|
Loading…
Reference in New Issue
Block a user