#在“/”下創建username和password兩個文件,分別存放用戶名和密碼.格式為:username中每行一個用戶名;password中每行一個密碼,與username中的user一一對應。
#!/bin/bash
#判斷文件是否存在
if [ ! -f /username ]; then
echo "ERROR:file username unexistd"
elif [ ! -f /password ]; then
echo "ERROR:file passwd unexistd"
else
#判斷行數是否匹配
NAMELINE=` wc -l /username |cut -d " " -f 1`
PASSWDLINE=` wc -l /password |cut -d " " -f 1`
if [ "$NAMELINE" = "0" -a "$PASSWDLINE" = "0" ];then
echo "file username and password empty"
elif [ "$NAMELINE" = "0" ]; then
echo "file username empty"
elif [ "$PASSWDLINE" = "0" ];then
echo "file password empty"
elif [ "$NAMELINE" != "$PASSWDLINE" ]; then
echo "error,please check 'username' or 'passwd'"
#行數相等,創建用戶
elif [ "$NAMELINE" = "$PASSWDLINE" ]; then
for num in $(seq 1 $NAMELINE)
do
USERNM=`sed -n ${num}p /username`
PASSWD=`sed -n ${num}p /password`
USERADD=`useradd $USERNM &> /dev/null && echo "1" || echo "0"`
#判斷用戶是否存在
if [ "$USERADD" = "1" ]; then
echo $PASSWD|passwd --stdin $USERNM
echo "user $USERNM add successfully"
elif [ "$USERADD" = "0" ]; then
echo "useradd failed, user $USERNM existd"
fi
done
fi
fi
