#!/bin/bash
# name:svn append user script.
# time:2016/2/21
# author:XXX
# compary:XXXX集团有限公司
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
inputs(){
read -p '请输入你要添加的用户名(名字设置为中文的全拼): ' users
read -p '请输入用户密码(为了方便设置为:123456): ' passwords
read -p '请输入所属的部门([研发中心/营销中心/资材中心/人事行政/财务/投资集团/置业集团/企划中心/总裁办/教育协会/控股集团]): ' departments
}
cases(){
case $departments in
研发中心)
bm=110
;;
财务)
bm=111
;;
人事行政)
bm=112
;;
营销中心)
bm=113
;;
置业集团)
bm=114
;;
教育协会)
bm=115
;;
企划中心)
bm=116
;;
投资集团)
bm=117
;;
总裁办)
bm=118
;;
控股集团)
bm=119
;;
esac
}
finds(){
#判断是否输入为空行,如果不为空返回OK,空行返回不为OK直接else主函数中退出
us=`echo ${users:+OK}`
ps=`echo ${passwords:+OK}`
ders=`echo ${departments:+OK}`
if [[ $ders == 'OK' ]] && [[ $us == 'OK' ]] && [[ $ps == 'OK' ]];then
#精确匹配文本中的字符
numbers=`cat ./password.txt|grep -win "$departments"|awk -F ':' '{print $1}'`
#如果匹配不出来就是返回空,如果匹配倒不为空才继续执行下面的
if [[ $numbers != '' ]];then
#精确匹配password.txt文本中谋一个字符在其行下面新插入一行
sed -i "${numbers}a${users} = ${passwords}" ./password.txt
cases
#精确匹配auth.txt文本行中谋一个字符在其行首加入字符
sed -i "/$bm/s/$/,$users/" ./auth.txt
#在bm那行插入用户名
echo -e "恭喜你,添加成功,SVN账号为: $users\t密码为: $passwords"
else
return 1
fi
else
return 1
fi
}
main(){
inputs
finds
if [ $? == "1" ];then
echo "sorry 你输入的:(用户名/密码/部门)有误..."
exit 1
fi
}
main
shell svn自动管理脚本
于 2020-08-14 08:30:29 首次发布