使用Shell编程创建100个用户,用户名为asd+1-100,初始密码为1234,对系统中存在的用户给出提示,创建后统计本次成功创建的用户数量。通过查看/etc/passwd等配置文件确认操作结果
时间: 2024-02-11 19:04:28 浏览: 21
以下是创建100个用户的Shell脚本:
```bash
#!/bin/bash
count=0
for i in {1..100}
do
username="asd$i"
password="1234"
egrep "^$username" /etc/passwd >/dev/null
if [ $? -eq 0 ]; then
echo "$username already exists!"
else
useradd -m -p $(openssl passwd -1 $password) $username
echo "User $username created successfully with password $password!"
let count++
fi
done
echo "Total $count users created."
```
该脚本会循环创建100个用户,用户名为asd1至asd100,初始密码为1234。在每次创建用户之前,脚本会检查用户名是否已经存在,如果已经存在,则给出提示,不进行创建;否则,创建用户并输出创建结果。
创建完成后,可以通过查看/etc/passwd等配置文件来确认操作结果。也可以使用以下命令查看所有的asd用户:
```bash
grep "^asd" /etc/passwd
```
相关问题
写一个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密码。
用shell脚本创建100个用户,并生成6位随机密码
好的,可以使用以下的shell脚本来创建100个用户并生成6位随机密码:
```shell
#!/bin/bash
# 循环100次创建用户
for i in {1..100}
do
# 生成6位随机密码
password=$(openssl rand -base64 4 | tr -d "=+/")
# 创建用户
username="user$i"
useradd -m -s /bin/bash $username
# 设置密码
echo "$username:$password" | chpasswd
# 打印用户信息
echo "User created: $username, Password: $password"
done
```
这个脚本会循环100次,每次创建一个用户。用户名会以"user"开头,后面跟着循环计数器的值。密码是使用openssl生成的6位随机密码。创建用户和设置密码都是使用Linux系统的标准命令完成的。脚本还会打印每个用户的信息,以便你可以记录下来。