setupuser
上传用户:wxp200602
上传日期:2007-10-30
资源大小:4028k
文件大小:1k
- #!/usr/bin/perl
- use DBI;
- $hostname = 'localhost'; # Host that serves the mSQL Database
- $dbname = 'snmp'; # mySQL Database name
- $doit = 1;
- sub usage {
- print "$0 [-H host] [-u user] [-p password] [-v] [-h] [-n] [-d] [-a] GROUP USER EMAILADDRESSn";
- exit 0;
- }
- while ($#ARGV > -1 && $ARGV[0] =~ /^-/) {
- $_ = shift @ARGV;
- usage if (/-h/);
- $hostname = shift if (/-H/);
- $sqluser = shift if (/-u/);
- $pass = shift if (/-p/);
- $admin = 1 if (/-a/);
- $verbose = 1 if (/-v/);
- $delete = 1 if (/-d/);
- $doit = 0 if (/-n/);
- }
- ($group, $user, $email) = @ARGV;
- die "group $group is a reserved group name, you can't use it. Sorry." if ($group eq "default");
- die "no group specified" if (!defined($group));
- ( $dbh = DBI->connect("DBI:mysql:database=$dbname;host=$hostname", $sqluser, $pass))
- or die "tConnect not ok: $DBI::errstrn";
- DO("insert into usergroups(user, groupname, isadmin) values('$user', '$group', " . (($admin) ? "'Y'" : "'N'") . ")");
- if (defined($email)) {
- DO("insert into oncall(user, groupname, email, days, hours) values('$user', '$group', '$email', '*', '*')");
- }
- $dbh->disconnect();
- sub DO {
- my $cmd = shift;
- print $cmd,"n" if ($verbose);
- $dbh->do($cmd) if ($doit);
- }