18道Shell高级编程企业实战题及参考答案
# viuseradd.sh#! /bin/bash
. /etc/init.d/functions
Path=/server/scripts
UserDb=$Path/user.db
FailDb=$Path/fail_user.db
[ -d "$Path" ] || mkdir-p $Path
[ -f "$UserDb" ] ||touch $UserDb
[ -f "$FailDb" ] ||touch $FailDb
for n in $(seq -w 10)
do
passwd=`echo $(date+%t%N)$RANDOM|md5sum|cut -c 2-9`
useradd oldboy$n >&/dev/null&& user_status=$?
echo "$passwd"|passwd --stdinoldboy$n >&/dev/null && pass_status=$?
if [ $user_status -eq 0 -a $pass_status -eq0 ];then
action "adduser oldboy$n"/bin/true
echo -e "user:\toldboy$npass:$passwd" >>$UserDb
else
action "adduser oldboy$n"/bin/false
echo -e "user:\toldboy$npass:$passwd" >>$FailDb
fi
done
# shuseradd.sh
adduser oldboy01
adduser oldboy02
adduser oldboy03
adduser oldboy04
adduser oldboy05
adduser oldboy06
adduser oldboy07 [ OK]
adduser oldboy08
adduser oldboy09
adduser oldboy10
# cat user.db
user: oldboy01 pass:f3291720
user: oldboy02 pass:457a9f30
user: oldboy03 pass:ff186389
user: oldboy04 pass:8f884b7c
user: oldboy05 pass:26f831b4
user: oldboy06 pass:344e2300
user: oldboy07 pass:0736b278
user: oldboy08 pass:67c1fa76
user: oldboy09 pass:b11e7aa9
user: oldboy10 pass:9e0c3673
页:
[1]