]> granicus.if.org Git - postgresql/commitdiff
From: Igor <igor@sba.miami.edu>
authorMarc G. Fournier <scrappy@hub.org>
Sun, 1 Jun 1997 15:40:08 +0000 (15:40 +0000)
committerMarc G. Fournier <scrappy@hub.org>
Sun, 1 Jun 1997 15:40:08 +0000 (15:40 +0000)
Subject: [PATCHES] destroydb patch

I am including a patch for destroydb to ask for confirmation before
deleting databases (after I accidentally deleted mine)...destroydb -y
would force delete without any confirmation.

src/bin/destroydb/destroydb.sh

index 9f863a964fb72157cb28748230469c8495325e54..5fb2ff2313c1fd194ee628541574d6b7745337fe 100644 (file)
@@ -11,7 +11,7 @@
 #
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/bin/destroydb/Attic/destroydb.sh,v 1.6 1996/11/17 03:54:58 bryanh Exp $
+#    $Header: /cvsroot/pgsql/src/bin/destroydb/Attic/destroydb.sh,v 1.7 1997/06/01 15:40:08 scrappy Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -30,10 +30,11 @@ if [ -z "$USER" ]; then
 fi
 
 dbname=$USER
-
+forcedel=f
 while [ -n "$1" ]
 do
        case $1 in 
+               -y) forcedel=t;;
                -a) AUTHSYS=$2; shift;;
                -h) PGHOST=$2; shift;;
                -p) PGPORT=$2; shift;;
@@ -41,7 +42,6 @@ do
        esac
        shift;
 done
-
 if [ -z "$AUTHSYS" ]; then
   AUTHOPT=""
 else
@@ -60,12 +60,25 @@ else
   PGPORTOPT="-p $PGPORT"
 fi
 
-psql -tq $AUTHOPT $PGHOSTOPT $PGPORTOPT -c "drop database $dbname" template1
+answer=y
+if [ "$forcedel" = f ]
+   then
+   answer=f
 
-if [ $? -ne 0 ]
+   while [ "$answer" != y -a "$answer" != n ]
+   do
+       echo -n "Are you sure? (y/n) "
+       read answer
+   done
+fi
+
+if [ "$answer" = y ]
 then
-       echo "$CMDNAME: database destroy failed on $dbname."
-       exit 1
+  psql -tq $AUTHOPT $PGHOSTOPT $PGPORTOPT -c "drop database $dbname" template1
+    if [ $? -ne 0 ]
+       then echo "$CMDNAME: database destroy failed on $dbname."
+       exit 1
+    fi
 fi
 
 exit 0