简单脚本求助

sh/bash/dash/ksh/zsh等Shell脚本
回复
yohu
帖子: 955
注册时间: 2006-12-18 17:04
来自: 福建泉州

简单脚本求助

#1

帖子 yohu » 2010-04-28 10:30

我想实现自动添加用户的功能。对脚本不太熟悉,哪位兄台可以教我学习下。

用户组 abc,abc为固定, 用户名 自定义输入 密码 自定义输入

先判断是否存在abc,不存在自动执行groupadd abc

然后提示输入用户名,输入完执行adduser

adduser --ingroup abc $用户名

添加后执行设置密码

提示输入密码,输入后执行passwd自动设置密码。

ubuntu下可能不需要执行passwd,因为adduser的时候会提示,不过有部分系统执行adduser的时候不会提示设置密码,所以希望把passwd也加入。本身这个脚本命令很少,我只希望学个入门,接下去自己再添加一些自定义的设置。
拥有超级牛力的搜索引擎:
http://www.google.com/linux
http://www.google.com/
centerbot
帖子: 375
注册时间: 2010-02-27 16:48

post from IRC #ubuntu-cn

#2

帖子 centerbot » 2010-04-28 10:32

我是来试试怎么用irc回复帖子的 B-) ------->贴: Shell脚本 • 简单脚本求助 ...

-----------------------------------------------------------------------------------------------------------------
这是来自IRC聊天室#ubuntu-cn的网友yiran3344的回帖。欢迎访问 Ubuntu 中文官方支持频道http://webchat.freenode.net。频道填#ubuntu-cn,用户名随意。疑难问题大牛现场解答
centerbot
帖子: 375
注册时间: 2010-02-27 16:48

post from IRC #ubuntu-cn

#3

帖子 centerbot » 2010-04-28 10:45

equire "os"

-----------------------------------------------------------------------------------------------------------------
这是来自IRC聊天室#ubuntu-cn的网友jyf1987的回帖。欢迎访问 Ubuntu 中文官方支持频道http://webchat.freenode.net。频道填#ubuntu-cn,用户名随意。疑难问题大牛现场解答
pengphy
帖子: 2
注册时间: 2009-06-09 12:45

Re: 简单脚本求助

#4

帖子 pengphy » 2010-04-30 12:41

代码: 全选

#!/bin/bash
#30/4/2010

#if group abc is existed,do add_user
ADD_USER()
{[code]
echo -n "enter user name:"
read user_name
sudo adduser --ingroup abc $user_name
}

If_exist=$(grep "^abc" /etc/group)

if [ -n "$If_exist" ] ; then
echo "group abc existed!"
ADD_USER
else
echo "group abc not existed!"
sudo addgroup abc
ADD_USER
fi[/code]
yohu
帖子: 955
注册时间: 2006-12-18 17:04
来自: 福建泉州

Re: 简单脚本求助

#5

帖子 yohu » 2010-05-17 0:44

谢谢楼上大侠回复,再请教一个问题,如果我有N个用户名密码,有没有办法批量添加?
比如说用户名密码保存为:

代码: 全选

user1 password1
user2 password2
……
这样格式的文本,如何实现批量导入用户?
拥有超级牛力的搜索引擎:
http://www.google.com/linux
http://www.google.com/
Zandy
帖子: 2
注册时间: 2009-10-21 15:13

Re: 简单脚本求助

#6

帖子 Zandy » 2010-05-22 19:26

假设你有文件 userlist.txt ,里内容为
a1:x:2001:2001::/home/a1:/bin/bash
a2:x:2002:2002::/home/a2:/bin/bash
...


有密码文件 userpswd.txt
a1:p1
a2:p2
...

执行
$ sudo newusers userlist.txt
$ sudo chpasswd < userpswd.txt

就可以添加用户 a1 a2 ... 了
回复