script.sh_script


  


  

  2.脚本内容

#!/bin/bash    

 

  while [ "$#" -lt "2" ]         ##验证脚本后的文件是否小于2个

    do

    echo "please give me userfile or passwd file "

    exit 0

  done

 

x=`cat $1 | wc -l`

y=`cat $2 | wc -l`

   while  [ "$x" -ne "$y" ]       ##验证两个文件是否一致

      do

      echo "/mnt/userfile's line is different /mnt/passwdfile's line"

      exit 0

   done

 

 

for ((i=1;i<=$x;i++))

do

     name=`sed -n "$i"p $1`

     pass=`sed -n "$i"p $2`

     useradd $name     &>/dev/null

     num=`echo $?`

      if [ "$num" -eq "0" ];then     ##验证用户是否存在

      echo $pass | passwd --stdin $name  ##不存在时,建立用户并设置密码

      else                 ##存在时不做任何操作

      echo "                               " &>/dev/null

      fi

done

 


测试

 脚本后只跟一个文件

script.sh_script_02

两个文件行数不一致

script.sh_sh_03

建立用户并设置密码

script.sh_script_04

script.sh_script_05

当user1和user3存在时,只建立user2用户,并且不对user1和user3做任何操作。

script.sh_script_06

script.sh_sh_07