Chinaunix首页 | 论坛 | 博客
  • 博客访问: 60312
  • 博文数量: 14
  • 博客积分: 305
  • 博客等级: 二等列兵
  • 技术积分: 145
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-14 17:18
文章分类

全部博文(14)

文章存档

2011年(14)

我的朋友

分类: 系统运维

2011-03-17 10:40:29

因为自己需要导入大量公司邮件用户,导出全局地址本的时候希望有用户的名字,看了一下userctl.pl的使用说明,并没有读取文件内邮件用户名字,如果是导入后再一个个在后台改就太麻烦了,所以就打算小改一下脚本。

看了一下userctl.pl,发现只要多读文件内一列然后写入就行了,读不懂下边这句:

my $name = defined $opt{name} ? $opt{name} : $user;

似乎是如果name参数有定义就用name,无定义就用@domain.com之前的部分,那个个用户都用name参数的值,貌似很不合理吧?

修改的方法

131行加上:

my $name = $_[4];

注释原139行的:

#my $name = defined $opt{name} ? $opt{name} : $user;

原来第268行改为:

$rv = adduser $info[0],$info[1],$info[2],$info[3],$info[4];

用户信息文件格式(email地址、密码、邮箱配额、netdisk配额、名字):

123123 100 20 测试用户1

123123 100 20 测试用户2

用户信息文件保存的时候记得保存为utf8格式(见图)

然后命令格式如下:

cd /usr/local/www/extman/tools/

perl ./userctl.pl --mod=badd --file=./userlist --setuid=1000 --setgid=1000

 

对userctl.pl的小修改,批量导入加上名字 - zhumin9087 - 该页无法显示

阅读(1794) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~