#!/bin/bash
[ "$2" == "" ] && exec echo "Usage: $0 <type: prefix / postfix / contain> <pattern>"

TYPE=$1
PATTERN=$2

case ${TYPE} in
    prefix)
        DBNAME_LISTS=$(psql -U postgres -Atqc "SELECT datname FROM pg_database WHERE datname ~ '^${PATTERN}';")
        ;;
    postfix)
        DBNAME_LISTS=$(psql -U postgres -Atqc "SELECT datname FROM pg_database WHERE datname ~ '${PATTERN}$';")
        ;;
    contain)
        DBNAME_LISTS=$(psql -U postgres -Atqc "SELECT datname FROM pg_database WHERE datname ~ '${PATTERN}';")
        ;;
    *)
        echo "Unknown type for ${TYPE}!"
        ;;
esac


for dbname in ${DBNAME_LISTS}; do
    echo "${dbname}"
    $HOME/bin/DBbackup ${dbname}
    psql -U postgres -c "DROP DATABASE IF EXISTS \"${dbname}\";"
done
