写一个shell脚本,使用for循环新增10个用户,并将每个用户的密码设置为 1234
时间: 2024-03-22 10:37:38 浏览: 16
好的,下面是使用 shell 脚本来实现上述功能的代码:
```bash
#!/bin/bash
# 新增10个用户,密码均为 1234
for i in {1..10}
do
username="user_$i"
password="1234"
echo "新增用户:$username,密码:$password"
useradd $username
echo "$password" | passwd --stdin $username
done
```
上述代码中,我们使用了 `for` 循环来新增 10 个用户,其中 `{1..10}` 表示从 1 到 10 的整数序列。在循环体中,我们使用变量 `$i` 来生成每个用户的用户名,并将密码设为固定值 `1234`。然后,我们使用 `echo` 命令输出新增用户的信息,使用 `useradd` 命令创建用户,最后使用 `passwd` 命令将密码设置为 `1234`。注意,这里使用 `echo "$password" | passwd --stdin $username` 的方式来设置密码,其中 `--stdin` 表示从标准输入中读取密码。
相关问题
写一个shell脚本,批量创建10个用户,并分别设置随机密码
好的,以下是一个批量创建用户并设置随机密码的shell脚本:
```bash
#!/bin/bash
# 创建10个用户
for i in {1..10}
do
username="user$i"
# 判断用户是否已存在
if id "$username" >/dev/null 2>&1; then
echo "用户 $username 已存在"
else
# 创建用户并设置随机密码
password=$(openssl rand -base64 12 | tr -d '/+=' | cut -c -8)
useradd -m -s /bin/bash "$username"
echo "$username:$password" | chpasswd
echo "用户 $username 创建成功,密码为 $password"
fi
done
```
这个脚本会创建10个用户,用户名分别为`user1`到`user10`。如果用户已经存在,则会跳过该用户的创建。对于新创建的用户,会使用`openssl rand`命令生成一个随机密码,然后将其设置为用户的密码。
写一个shell脚本创建mysql数据库用户并指定用户名为zabbix密码为zbx@1234
好的,以下是创建mysql数据库用户并指定用户名为zabbix密码为zbx@1234的shell脚本:
```bash
#!/bin/bash
# 定义变量
MYSQL_USER=root
MYSQL_PASSWORD=your_mysql_password
MYSQL_HOST=localhost
MYSQL_PORT=3306
MYSQL_DATABASE=zabbix
MYSQL_USER_NAME=zabbix
MYSQL_USER_PASSWORD=zbx@1234
# 创建用户
mysql -u${MYSQL_USER} -p${MYSQL_PASSWORD} -h${MYSQL_HOST} -P${MYSQL_PORT} -e "CREATE USER '${MYSQL_USER_NAME}'@'%' IDENTIFIED BY '${MYSQL_USER_PASSWORD}';"
# 授权用户
mysql -u${MYSQL_USER} -p${MYSQL_PASSWORD} -h${MYSQL_HOST} -P${MYSQL_PORT} -e "GRANT ALL PRIVILEGES ON ${MYSQL_DATABASE}.* TO '${MYSQL_USER_NAME}'@'%';"
# 刷新权限
mysql -u${MYSQL_USER} -p${MYSQL_PASSWORD} -h${MYSQL_HOST} -P${MYSQL_PORT} -e "FLUSH PRIVILEGES;"
```
请将上述脚本保存为一个文件(例如:create_user.sh),然后在终端中运行该脚本即可创建mysql数据库用户并指定用户名为zabbix密码为zbx@1234。请注意将脚本中的`your_mysql_password`替换为您的mysql密码。