mirror of
https://github.com/postgres/postgres.git
synced 2025-06-06 00:02:36 -04:00
Added single-letter options and case statement.
This commit is contained in:
parent
2d456c473d
commit
a974522f5f
@ -26,7 +26,7 @@
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $Header: /cvsroot/pgsql/src/bin/initdb/Attic/initdb.sh,v 1.9 1996/10/04 20:07:10 scrappy Exp $
|
# $Header: /cvsroot/pgsql/src/bin/initdb/Attic/initdb.sh,v 1.10 1996/10/05 03:24:47 momjian Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -57,34 +57,50 @@ noclean=0
|
|||||||
template_only=0
|
template_only=0
|
||||||
POSTGRES_SUPERUSERNAME=$USER
|
POSTGRES_SUPERUSERNAME=$USER
|
||||||
|
|
||||||
for ARG ; do
|
while [ "$#" -gt 0 ]
|
||||||
# We would normally use e.g. ${ARG#--username=} to parse the options, but
|
do
|
||||||
# there is a bug in some shells that makes that not work (BSD4.4 sh,
|
# ${ARG#--username=} is not reliable or available on all platforms
|
||||||
# September 1996 -- supposed to be fixed in later release). So we bypass
|
|
||||||
# the bug with this sed mess.
|
|
||||||
|
|
||||||
username_sed=`echo $ARG | sed s/^--username=//`
|
case "$1" in
|
||||||
pgdata_sed=`echo $ARG | sed s/^--pgdata=//`
|
--debug|-d)
|
||||||
|
|
||||||
if [ $ARG = "--debug" -o $ARG = "-d" ]; then
|
|
||||||
debug=1
|
debug=1
|
||||||
echo "Running with debug mode on."
|
echo "Running with debug mode on."
|
||||||
elif [ $ARG = "--noclean" -o $ARG = "-n" ]; then
|
;;
|
||||||
|
--noclean|-n)
|
||||||
noclean=1
|
noclean=1
|
||||||
echo "Running with noclean mode on. Mistakes will not be cleaned up."
|
echo "Running with noclean mode on. Mistakes will not be cleaned up."
|
||||||
elif [ $ARG = "--template" ]; then
|
;;
|
||||||
|
--template|-t)
|
||||||
template_only=1
|
template_only=1
|
||||||
echo "updating template1 database only."
|
echo "updating template1 database only."
|
||||||
elif [ $username_sed. != $ARG. ]; then
|
;;
|
||||||
POSTGRES_SUPERUSERNAME=$username_sed
|
--username=*)
|
||||||
elif [ $pgdata_sed. != $ARG. ]; then
|
POSTGRES_SUPERUSERNAME="`echo $1 | sed s/^--username=//`"
|
||||||
PGDATA=$pgdata_sed
|
;;
|
||||||
else
|
-u)
|
||||||
echo "Unrecognized option '$ARG'. Syntax is:"
|
shift
|
||||||
echo "initdb [--template] [--debug] [--noclean]" \
|
POSTGRES_SUPERUSERNAME="$1"
|
||||||
"[--username=SUPERUSER] [--pgdata=DATADIR]"
|
;;
|
||||||
|
-u*)
|
||||||
|
POSTGRES_SUPERUSERNAME="`echo $1 | sed s/^-u//`"
|
||||||
|
;;
|
||||||
|
--pgdata=*)
|
||||||
|
PGDATA="`echo $1 | sed s/^--pgdata=//`"
|
||||||
|
;;
|
||||||
|
-r)
|
||||||
|
shift
|
||||||
|
PGDATA="$1"
|
||||||
|
;;
|
||||||
|
-r*)
|
||||||
|
PGDATA="`echo $1 | sed s/^-r//`"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unrecognized option '$1'. Syntax is:"
|
||||||
|
echo "initdb [-t | --template] [-d | --debug] [-n | --noclean]" \
|
||||||
|
"[-u SUPSERUSER | --username=SUPERUSER] [-r DATADIR | --pgdata=DATADIR]"
|
||||||
exit 100
|
exit 100
|
||||||
fi
|
esac
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ "$debug" -eq 1 ]; then
|
if [ "$debug" -eq 1 ]; then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user