首页 > 代码库 > 批量远程创建用户
批量远程创建用户
linux 创建用户你会? 哪远程批量创建用户呢?
批量创建用户脚本简单示例
#!/bin/bash if [ -z "$1" -o -z "$2" ];then #从USES、PASSWD文件读取用户和密码,限检测参数是否存在 echo " Uages: userfile passfile EXAMPLES: urctl userfile passfile ps: Must do it by this way ... " exit fi USERFILE=$1 PASSFILE=$2 UNUM=`cat $USERFILE | wc -w` PNUM=`cat $PASSFILE | wc -w` if [ $UNUM != $PNUM ];then #获取USES和PASSWD行数,如果不匹配就退出 echo user Number info not match password Nubmer info exit fi for(( un=1; un<=$UNUM ; un++ )) #循环创建用户 do NAME=`sed -n $un"p" $USERFILE` grep $NAME /etc/passwd &> /dev/null && echo User: $NAME is exist create filed || { #判断用户是否存在,不存在则创建,否则跳过 PASS=`sed -n $un"p" $PASSFILE` for IP in 172.25.254.{71,72} #批量 创建用户 do ping -c1 -w1 $IP &> /dev/null && ( #以root身份登陆 redhat@IP ,执行 useradd. ./batch root $IP redhat "useradd $NAME -p $PASS" #batch 是 expect自动应答脚本 ) done } done
cat ./batch
#!/usr/bin/expect set USER [ lindex $argv 0 ] #参数传给变量 set IP [ lindex $argv 1 ] set PASS [ lindex $argv 2 ] set COMM [ lindex $argv 3 ] spawn ssh $USER@$IP ($COMM) #执行命令 sleep 1 expect { "yes/no" #匹配yes/no { send "yes\r"; exp_continue } #回答 yes "password" { send "$PASS\r";} } interact
批量远程创建用户
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。