From 459a773148890b416da717cd8dc50584fa0b3fd1 Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Wed, 18 Sep 2019 11:45:20 +0200 Subject: [PATCH] chore: improve clean.sh --- clean.sh | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/clean.sh b/clean.sh index 2b9f5bfc7..02487e8b2 100755 --- a/clean.sh +++ b/clean.sh @@ -10,6 +10,8 @@ case $1 in ;; *) target=".stack-work-${1}" + shift + if [[ ! -d "${target}" ]]; then printf "%s does not exist or is no directory\n" "${target}" >&2 exit 1 @@ -20,7 +22,11 @@ case $1 in fi move-back() { - mv -v .stack-work "${target}" + if [[ -d .stack-work ]]; then + mv -v .stack-work "${target}" + else + mkdir -v "${target}" + fi [[ -d .stack-work-clean ]] && mv -v .stack-work-clean .stack-work } @@ -28,6 +34,9 @@ case $1 in mv -v "${target}" .stack-work trap move-back EXIT - stack clean + ( + set -ex + stack clean $@ + ) ;; esac