编写shell脚本,实现批量添加用哈哈功能,要求如下:用户名格式统一,为相同字符串加数字编号,如qwe1~qwe9;用户密码与用户名相同
时间: 2024-03-11 09:47:34 浏览: 16
好的,我可以帮你编写这个shell脚本。请先确认你的系统中已经安装了bash。
以下是脚本的代码:
```bash
#!/bin/bash
# 定义用户名前缀
prefix="qwe"
# 定义用户数量
user_count=9
# 循环添加用户
for (( i=1; i<=$user_count; i++ ))
do
# 定义用户名和密码
username="$prefix$i"
password="$username"
# 添加用户
useradd -m -s /bin/bash -p $(openssl passwd -1 $password) $username
# 输出添加结果
if [ $? -eq 0 ]
then
echo "用户 $username 添加成功,密码为 $password"
else
echo "用户 $username 添加失败"
fi
done
```
你可以将脚本代码复制到一个名为add_users.sh的文件中,并使用chmod命令添加执行权限:
```bash
chmod +x add_users.sh
```
然后在终端中执行脚本:
```bash
./add_users.sh
```
脚本会自动添加9个用户,用户名为qwe1~qwe9,密码与用户名相同。添加结果将会在终端中输出。注意,你需要以root用户或sudo权限执行脚本才能添加用户。
相关问题
编写Shell脚本,实现批量添加用户功能,要求如下: 1)用户名格式统一,为相同字符串加数字编号,如qwe1-qwe9 2)用户密码与用户名相同
好的,以下是一个简单的 Shell 脚本来实现批量添加用户的功能:
```bash
#!/bin/bash
read -p "请输入班级人数: " num
# 定义用户名前缀和密码
username_prefix="qwe"
password_prefix="qwe"
# 循环添加用户
for i in $(seq 1 $num)
do
# 构造用户名和密码
username="$username_prefix$i"
password="$password_prefix$i"
# 添加用户
useradd "$username" -m -s /bin/bash
echo "$username:$password" | chpasswd
# 输出添加成功的用户信息
echo "添加用户成功: 用户名:$username 密码:$password"
done
# 将用户信息保存到文件中
cat /etc/passwd | grep "$username_prefix" > users.txt
```
在这个脚本中,我们首先读取输入的班级人数,然后定义了用户名前缀和密码前缀。接下来,我们使用了一个 for 循环来批量添加用户。在每次循环中,我们构造了用户名和密码,然后使用 useradd 命令添加用户,并使用 chpasswd 命令设置用户密码。最后,我们输出了添加成功的用户信息,并将所有用户名以指定前缀的用户信息保存到文件中。
请注意,由于这是一个 Shell 脚本,因此需要在 Linux 或 macOS 系统中运行。
编写shell脚本,实现批量添加用户功能,要求如下:1用户名称统一,为相同的字符串添加数字编号,如qwe1~qwe9;
非常好,下面是一个简单的 shell 脚本,可以实现批量添加用户的功能,根据您的要求,用户名称为 qwe1~qwe9。
```bash
#!/bin/bash
# 定义用户名的前缀和数字编号的范围
user_prefix="qwe"
start_num=1
end_num=9
# 循环创建用户
for i in $(seq ${start_num} ${end_num})
do
# 拼接用户名
username=${user_prefix}${i}
# 判断用户是否已存在
if id ${username} &>/dev/null; then
echo "用户 ${username} 已存在,跳过创建。"
else
# 创建用户
useradd ${username}
echo "用户 ${username} 创建成功。"
fi
done
echo "批量添加用户完成。"
```
这个脚本会先定义用户名称的前缀和数字编号的范围,然后使用 for 循环逐个创建用户。在创建用户之前,会先判断用户是否已存在,避免重复创建。最后输出创建完成的信息。
您可以将这个脚本保存为一个 .sh 文件,然后使用 chmod 命令赋予执行权限,执行即可。