使用Bash脚本从文本文件创建/删除用户
我知道这个问题已经问了很多,但我似乎无法解决这个问题,我有点忙,好吧.
I know this question has been asked a lot but I just can't seem to get it working and I'm kinda on the clock, okay so.
我正在尝试使用4个选项菜单制作一个bash脚本:1添加单个用户2从列表添加3删除单个用户4从列表中删除
I'm trying to make a bash script with a 4 option menu: 1 Add single user 2 Add from list 3 Delete single user 4 Delete from list
添加和删除单个用户我一直在努力,只是从列表中打败了我.
Adding and deleting single users I've got working it's just from list that keep defeating me.
这是我到目前为止获得的代码
This is the code I've got so far
#!/bin/bash
choice=5
# Main display
echo "Enter number to select an option"
echo
echo "1) Add Single User"
echo "2) Add Users from list"
echo "3) Delete Single User"
echo "4) Delete users from list"
echo
while [ $choice -eq 5 ]; do
read choice
if [ $choice -eq 1 ] ; then
echo -e "Enter Username"
read user_name
echo -e "Enter Password"
read user_passwd
sudo useradd $user_name -m -p $user_passwd
cat /etc/passwd
else
if [ $choice -eq 2 ] ; then
x=0
created=0
echo -e "Enter file name for users:"
read user_list
sudo useradd "$user_list" -m -p "$user_list"
else
if [ $choice -eq 3 ] ; then
cat /etc/passwd
echo
echo -e "User to be deleted:"
read del_user
sudo userdel -r $del_user
cat /etc/passwd
echo
else
if [ $choice -eq 4 ] ; then
echo "Not yet finished"
else
echo "#####################"
echo "# Stop being a noob #"
echo "#####################"
echo "1) Add Single User"
echo "2) Add Users from list"
echo "3) Delete Single User"
echo "4) Delete users from list"
echo
choice=5
fi
fi
fi
fi
done
用于吸引用户的文件仅仅是
The file to get the users from is just
User20
User19
User18
User17
User16
User15
User14
User13
User12
User11
User10
User9
User8
User7
User6
User5
User4
User3
User2
User1
我知道这很草率,但是我只需要演示文稿演示的演示,就可以得到任何帮助.
It's sloppy as hell I know but I just need it for a demo from a presentation assignment, any help is appreciated.
谢谢.
读完文件名后,您必须遍历该文件并为文件的每一行创建或删除用户.
After you read in the name of the file you have to iterate through that file and create or delete user for each line of the file.
示例:
for user in `cat user_list`
do
sudo useradd "$user" -m -p "$user"
done