Shell 自动批量添加用户

1 目标

文件user_pwd.txt中指定用户密码,内容如下:

user1  111111
user2  222222
user3  333333
user4  444444
user5  555555
user6  666666

通过shell脚本文件,自动添加用户、设置密码。


2 分析

主要步骤:

1)读取文件,遍历每一行 :通过read while;

2)从行数据中,解析出两个部分:通过awk;

3)通过useradd添加用户,passwd设置密码。

img


3 代码分解

第1步:遍历文件的每一行

cat user_pwd.txt | while read line
do
    echo $line
done

img

第2步:通过awk将每行拆成两部分

do与done中间代码如下

    echo $line
    name=`echo $line | awk '{print $1}'`
    password=`echo $line | awk '{print $2}'`
    echo "name:$name,password:$password"

img

第3步:通过useradd添加用户,passwd设置密码

    userdel -rf $name
    useradd $name
    echo $password | passwd $name --stdin

4 完整代码

文件02addusers.sh

#!/bin/bash
 
cat user_pwd.txt | while read line
do
    echo $line
    name=`echo $line | awk '{print $1}'`
    password=`echo $line | awk '{print $2}'`
    echo "name:$name,password:$password"
    userdel -rf $name
    useradd $name
    echo $password | passwd $name --stdin
done