实现 Shell 脚本muser.sh功能如下。 (1)脚本不需要配置文件,也不会生成任何配置文件。 (2)命令行输入4个参数:前缀、位数、起始序号、数量。 (3)交互式输入变量flag,如果flag既不是add也不是del,则打印错误信息要求重新输入,直到两者之一。 (4)如果 flag为add.则构建循环,采用useradd批里添加用户,使用passwd命令设置用户密码统一为 123456。 (5)如果 flag为del,则依据前缀参数运行 个命令删除刚刚创建成功的这些用户。
时间: 2024-03-22 17:41:15 浏览: 151
好的,我明白了你的问题。以下是 muser.sh 的实现:
```bash
#!/bin/bash
# 命令行参数
prefix=$1
num_digits=$2
start_num=$3
num_users=$4
# 交互式输入
while true; do
read -p "Do you want to add or delete users? (add/del)" flag
case $flag in
add)
# 添加用户
for ((i=$start_num; i<$start_num+$num_users; i++)); do
username="$prefix$(printf "%0${num_digits}d" $i)"
useradd $username
echo "123456" | passwd --stdin $username
done
break
;;
del)
# 删除用户
for ((i=$start_num; i<$start_num+$num_users; i++)); do
username="$prefix$(printf "%0${num_digits}d" $i)"
userdel -r $username
done
break
;;
*)
# 错误输入
echo "Invalid input. Please enter 'add' or 'del'."
;;
esac
done
```
你可以将该脚本保存为 `muser.sh` 文件并在命令行中输入 `./muser.sh <前缀> <位数> <起始序号> <数量>` 来运行它。注意,需要在脚本所在目录下运行。
阅读全文