用shell脚本批量建立Linux用户
实现要求:创建用户student1到student50,指定组为student组!而且每个用户需要设定一个不同的密码!
脚本实现如下:
#!/bin/bash
for i in `seq 1 50`
do
useradd -G student student$i ;
echo student$i | passwd student$i --stdin;
done
【说明:Linux下 Passwd有参数
--stdin
This option is used to indicate that passwd should read the new password from standard input, which can be a pipe.
所以linux下自动改变用户密码的办法就是:
Echo 密码 |passwd –stdin 用户名
】
-------------------设置相同的密码------------------------
#!/bin/bash
password="123456"
for USER in user1 user2 user3
do
useradd -m $USER
echo -e "${password}\n${password}" | passwd $USER
done
【说明:
echo -n 不换行输出:
$echo -n "123"
$echo "456"
最终输出
123456
而不是
123
456
echo -e 处理特殊字符:
\n 换行且光标移至行首 】
ok,就这么一个简单的脚本,就可以再系统里批量生成账号了。而且密码跟账号的名字一样。
这就是for do done语句用法。
实现要求:创建用户student1到student50,指定组为student组!而且每个用户需要设定一个不同的密码!
脚本实现如下:
#!/bin/bash
for i in `seq 1 50`
do
useradd -G student student$i ;
echo student$i | passwd student$i --stdin;
done
【说明:Linux下 Passwd有参数
--stdin
This option is used to indicate that passwd should read the new password from standard input, which can be a pipe.
所以linux下自动改变用户密码的办法就是:
Echo 密码 |passwd –stdin 用户名
】
-------------------设置相同的密码------------------------
#!/bin/bash
password="123456"
for USER in user1 user2 user3
do
useradd -m $USER
echo -e "${password}\n${password}" | passwd $USER
done
【说明:
echo -n 不换行输出:
$echo -n "123"
$echo "456"
最终输出
123456
而不是
123
456
echo -e 处理特殊字符:
\n 换行且光标移至行首 】
ok,就这么一个简单的脚本,就可以再系统里批量生成账号了。而且密码跟账号的名字一样。
这就是for do done语句用法。
编辑回复