diff options
| -rw-r--r-- | ves-delete.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/ves-delete.sh b/ves-delete.sh new file mode 100644 index 0000000..d7e6fc6 --- /dev/null +++ b/ves-delete.sh @@ -0,0 +1,29 @@ +#!/bin/sh + +OVERRIDE_VARS="PATH LDPATH" + +if [ -z $XDG_DATA_HOME ]; then + ENV_DIR="$HOME/.local/share/ves/envs" +else + ENV_DIR="$XDG_DATA_HOME/ves/envs" +fi + +check_name() { + if [ ! -f "$ENV_DIR/$1" ]; then + printf "ERROR: Environment [%s] does not exist.\n" $1 > /dev/stderr + exit 1 + fi + + if ! echo $1 | grep "^[[:alpha:][:digit:]_-]*$" > /dev/null; then + printf "ERROR: Environment [%s] is invalid. Name must contain only letters, -, and _\n" $1 > /dev/stderr + exit 1 + fi +} + + +ENV_NAME="$1" + +check_name "$1" +rm -f "$ENV_DIR/$ENV_NAME" + +printf "Environment [%s] deleted successfully\n" $ENV_NAME |