shell脚本之批量添加用户

没错,这是一个简单的脚本,不写不知道,写了才发现自己有多少不足。

下面的脚本主要用于批量添加用户的脚本,本来很简单的脚本,但是添加了一些判断,验证自己学习。

1.判断用户输入是否有误

2.判断用户是否存在,存在就跳过不再处理

代码如下:

#/bin/bash
#批量添加用户脚本
 
#判断用户是否存在函数
function panduan()
    {
        for nametmp in $(cat /tmp/user.txt)
            do
                if [ $nametmp = $1 ]
                    then
                        return 6
                        break
                fi
            done
    }
cat /etc/passwd|awk -F : ‘{print $1}‘&>>/tmp/user.txt
#读取用户输入信息
read -p "请输入前缀:" name
read -p "请输入个数:" num
read -p "请输入初始密码:" password
 
#判断输入是否为空
if [ -z "$name" -o -z "$num" -o -z "$password" ]
    then
        echo "输入不能为空"
    else
#判断用户个数是否格式为数字,不为数字就退出 
    echo $num|grep ^[0-9]*$&>/dev/null
    if [ $? -eq 0 ]
        then
            for i in `seq 1 $num`
                do
 
#判断用户是否存在
                    panduan $name$i&>/dev/null
                    if [ $? -ne 6 ]
                        then
                        useradd $name$i>>/dev/null
                        echo "$password"|passwd --stdin $name$i>>/dev/null
                        echo "用户名:$name$i   密码:$password  创建成功"
                    else 
                        echo "用户$name$i存在,不做处理"
                         
                    fi
            done
        else
            echo "用户个数输入有误,请输入数字"
    fi
                 
fi

请求大家指教一下,有没有更简单的方法。

时间: 2024-09-30 19:02:21

shell脚本之批量添加用户的相关文章

(转)通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加

通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加 原文:http://www.21yunwei.com/archives/4773 有一个朋友问我如何批量创建用户和设置密码 ,我就简单给他写了两个脚本,让他自己参考下并自己根据实际情况进行修改,毕竟他需要的用户名和密码都是实际生产环境的. 这里分两种情况,一种是测试for循环批量添加用户,一个是根据实际生产环境进行批量添加.分别写一下案例如下:1,for添加指定类型用户以及设置随机密码.脚本作用:批量添加user1-10用

shell脚本实例-批量添加用户名密码

#!/bin/bash read -t 30 -p "Input name:" name read -t 30 -p "Input number:" num #输入要批量添加的用户数量并将变量赋给num read -t 30 -p "Input password:" pass if [ -n "$name" -a -n "$num" -a -n "$pass" ] #判断都不为空 the

shell脚本-简单的添加用户

说明:通过脚本添加用户名和密码,如果用户名已存在则放弃添加 脚本名称:test2.txt cd /opt ls mkdir shell ls cd shell ls vi test2.txt 脚本内容如下: #!/bin/bash id $1 &>/dev/null && echo "User $1 exist" && exit 2 id $1 &>/dev/null || useradd $1 id $1 &>

shell脚本-简单的添加用户并统计总用户数

脚本名称:test4.txt cd /opt mkdir shell ls vi test4.txt 脚本内容如下: #!/bin/bash [ ! $# -eq 1 ] && echo "Args is error" &&  exit 5 id $1 &>/dev/null && echo "User $1 exist" && exit 2 id $1 &>/dev/nul

shell脚本之批量删除用户

1 #!/bin/bash 2 for i in {1..10};do 3 if id user$i &> /dev/null;then 4 userdel -r user$i &>/dev/null 5 echo "user$i is deleted" 6 else 7 echo "This user isn't exist" 8 fi 9 done 原文地址:https://blog.51cto.com/11342825/242496

shell 脚本实战笔记(9)--linux自动批量添加用户

前言: 添加linux用户帐号,这个相对简单, 在面对集群, 许多机器的时候, 我们该如何去做和实现? 这篇短文, 简单讲解一些思路, 尽可能地涉及周边的一些知识点. 不光是运维人员会面临这个问题, 对一个基于linux平台的集群服务或软件(比如hadoop集群), 有时也会涉及到这块. 应用场景: 是以centos 6.4作为演示的系统, 其他的系统有类同, 也有差异, 且以实战演练, 一步步的讲述下流程. *) 实战演练 查阅useradd的使用和参数选项useradd --help -d,

工程师技术(五):Shell脚本的编写及测试、重定向输出的应用、使用特殊变量、编写一个判断脚本、编写一个批量添加用户脚本

一.Shell脚本的编写及测 目标: 本例要求两个简单的Shell脚本程序,任务目标如下: 1> 编写一个面世问候 /root/helloworld.sh 脚本,执行后显示出一段话"Hello World!!"   2> 编写一个能输出系统信息的 /root/sysinfo 脚本,执行后依次输出当前红帽系统的版本信息.当前使用的内核版本.当前系统的主机名 方案: 规范Shell脚本的一般组成: 1> #! 环境声明(Sha-Bang)    2> # 注释文本 

SHELL脚本批量添加用户

在Linux服务中添加相应的用户账号,初始密码均为"123456".可以先指定所有用户的列表文件,然后编写一个名为uadduser.sh的脚本 [[email protected] ~]# vim /root/users.txt                       //新建一个指定所有用户的列表文件xiaomingxiaoqingxiaofangxiaodong [[email protected] ~]# vim uadduser.sh         //创建批量添加用户的

为Discuz! X3.2批量添加用户的python脚本

为Discuz! X3.2批量添加用户的python脚本 搭建了一个Discuz! X3.2环境用于工作,需要添加用户时没有找到合适的工具,虽然同事最终用按键精灵解决了问题,不过还是决定写一段代码留下来,也许用得上. 之所以是Python而不是PHP,只是最近在接触Python,发现在这种场合更加方便. 添加用户代码: # encoding: utf-8 ''' Created on 2015年7月1日 @author: ZhongPing ''' import urllib import ur