闲着没事把之前的一些shell面试题分享一下
创建用户,这道题考点:正则对比,eval使用
#!/bin/bash
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
read -p "请输入用户名前缀:" A
read -p "请输入创建用户个数:" B
[[ "$B" =~ ^[0-9]+$ ]] || echo "输入错误,请输入整数"
read -p "请输入用户密码:" -s C
[[ "$C" =~ ^[0-9]+$ ]] || echo "输入错误,请输入整数"
for i in `eval echo ${A}{1.."$B"}`;do
useradd $i
echo $C |passwd --stdin $i
done
规则创建用户
#!/usr/bin/sh
#Version V1.0
#Author ChenGuilin
#Create Time 2018-11-5
#QQ 21108858
#添加`user_00->user_09`10个用户, 并且给他们设置一个随机密码, 密码要求10位包含大小写字母以及数字, 注意需
要把每个用户的密码记录到一个日志文件中
UserDB="/etc/passwd"
Nulls="/dev/null"
>/$PWD/008.useradd.log
for ((i=0;i<=9;i++))
do
Password=`/server/scripts/bin/rand 10`
UserName=user_0$i
id $UserName &>$Nulls && continue
if [[ "$Password" =~ ^[0-9]{10}$ ]];then
echo "密码符合要求">>$PWD/008.useradd.log
fi
useradd $UserName &>$Nulls
id $UserName &>$Nulls
if [ $? -eq 0 ];then
echo $Password|passwd --stdin $UserName &>$Nulls
echo `date +%F_%T`" 添加用户成功,用户名为:"$UserName" 密码:"$Password >>$PWD/008.useradd.log
fi
done



Asynq任务框架
MCP智能体开发实战
WEB架构
安全监控体系




