#!/usr/bin/env bash
PASSWORDFILE=/cm/websvn/conf/passwd
TEMPFILE=/tmp/$$
ALPHA="[A-z]"
NUM="[0-9]"
ALPHANUM="[A-z|0-9]"
if [ ${#} = 0 ]
then
echo "You need to specify at least one username."
exit
fi
# Allow for multiple names blank-separated (as usual) or comma-separated
for U in `echo ${*} | sed -e "s;,; ;g"`
do
# Verify username is the right syntax (lowercase it first)
USER=`echo ${U}| tr "[A-Z]" "[a-z]" | sed -e "s;@abc.com$;;"`
echo ${USER} | grep "^${ALPHA}${ALPHA}${NUM}${NUM}${NUM}${ALPHANUM}$" >/dev/null 2>&1
if [ ${?} = 0 ]
then
grep "^${USER}[ ]*=" ${PASSWORDFILE} >/dev/null 2>&1
if [ ${?} != 0 ]
then
echo "Check this person's validity at http://webphone.abc.com/cgi-bin/ladder.pl?id=${USER}"
echo -n "Add ${USER}?> "
read INPUT
if [ ! -z ${INPUT} ] && [ ${INPUT} = 'y' ]
then
touch ${TEMPFILE} ; chmod 600 ${TEMPFILE}
ssh ecombuild02 "< /dev/urandom tr -cd 'A-Za-z0-9' | head -c\${1:-8} ; echo" >${TEMPFILE} 2>/dev/null
PW=`cat ${TEMPFILE}`
rm -f ${TEMPFILE}
echo "${USER} = ${PW}" >> ${PASSWORDFILE}
echo -n "Subversion (svn) account created for ${USER}. "
sendSvnPassword.sh ${USER}
else
echo "Skipped ${USER}"
fi
else
echo -n "${USER} already has an account, re-send password?> "
read INPUT
if [ ! -z ${INPUT} ] && [ ${INPUT} = 'y' ]
then
sendSvnPassword.sh ${USER}
fi
fi
else
echo "${USER} is not the correct syntax for a username, ignoring."
fi
echo
done
PASSWORDFILE=/cm/websvn/conf/passwd
TEMPFILE=/tmp/$$
ALPHA="[A-z]"
NUM="[0-9]"
ALPHANUM="[A-z|0-9]"
if [ ${#} = 0 ]
then
echo "You need to specify at least one username."
exit
fi
# Allow for multiple names blank-separated (as usual) or comma-separated
for U in `echo ${*} | sed -e "s;,; ;g"`
do
# Verify username is the right syntax (lowercase it first)
USER=`echo ${U}| tr "[A-Z]" "[a-z]" | sed -e "s;@abc.com$;;"`
echo ${USER} | grep "^${ALPHA}${ALPHA}${NUM}${NUM}${NUM}${ALPHANUM}$" >/dev/null 2>&1
if [ ${?} = 0 ]
then
grep "^${USER}[ ]*=" ${PASSWORDFILE} >/dev/null 2>&1
if [ ${?} != 0 ]
then
echo "Check this person's validity at http://webphone.abc.com/cgi-bin/ladder.pl?id=${USER}"
echo -n "Add ${USER}?> "
read INPUT
if [ ! -z ${INPUT} ] && [ ${INPUT} = 'y' ]
then
touch ${TEMPFILE} ; chmod 600 ${TEMPFILE}
ssh ecombuild02 "< /dev/urandom tr -cd 'A-Za-z0-9' | head -c\${1:-8} ; echo" >${TEMPFILE} 2>/dev/null
PW=`cat ${TEMPFILE}`
rm -f ${TEMPFILE}
echo "${USER} = ${PW}" >> ${PASSWORDFILE}
echo -n "Subversion (svn) account created for ${USER}. "
sendSvnPassword.sh ${USER}
else
echo "Skipped ${USER}"
fi
else
echo -n "${USER} already has an account, re-send password?> "
read INPUT
if [ ! -z ${INPUT} ] && [ ${INPUT} = 'y' ]
then
sendSvnPassword.sh ${USER}
fi
fi
else
echo "${USER} is not the correct syntax for a username, ignoring."
fi
echo
done
No comments:
Post a Comment