1 命令行
# sudo useradd bd
# sudo passwd bd
2 shell脚本
(1)准备工作
创建用户需要root用户权限,因此在非root用户下使用sudo,同时需输入密码;
为避免输入密码,将当前用户设置为免密码使用sudo;
# sudo vim /etc/sudoers 或
# sudo visudo
在“root ALL=(ALL) ALL”之后添加新行“XXX ALL=(ALL) ALL”,其中XXX是当前用户名;
其中,第一个ALL指在什么主机上执行命令,第二个ALL指以谁的身份执行命令,第三个ALL指执行的命令;
(2)脚本实现
#!/bin/sh
# 变量name接收第一个参数,变量pass接收第二个参数
# $n表示第n个参数,且=两边不能有空格
name=$1
pass=$2
# echo语句输出到控制台,${变量}和$变量都表示变量代表的字符串
echo "You're setting username: ${name}"
echo "You're setting password: ${pass}"
# 以root身份创建用户
sudo useradd bd
# 若上一个命令正常运行则成功,否则失败并退出程序
# $?表示上一个命令执行状态,-eq表示等于逻辑运算符
# if和fi成对使用
if [[$? -eq 0]];then
echo "${name} is created successfully."
else
echo "${name} is failed to be created."
exit 1
fi
# 在设置密码时需要输入密码,使用管道将密码传入
echo $pass | sudo passwd bd --stdin &> /dev/null
if [[$? -eq 0]];then
echo "${name}'s password is set successfully."
else
echo "${name}'s password is failed to be set."
fi