#
#!/usr/bin/perl
## User einer lokalen Gruppe entfernen, und zwar ueber PCs eines ganzen Netzbereiches
##
## Parameter: 1.: Netz 2.: Erste IP 3.: Letzte IP, welche bearbeitet werden soll.
##
## Aufruf Beispiel, um alle PCs von 192.168.0.10 bis 192.168.0.254
## netAdminLocalGroupDeleteUsers.pl 192.168.0. 10 254
use Net::Ping; use strict;
use Win32::NetAdmin qw(LocalGroupDeleteUsers LocalGroupAddUsers);
## HIER GRUPPE UND USER EINTRAGEN
my $LocalGroup = "administratoren";
my $User = "Domain\\cmarx" ;
## Uebergabe-Parameter in Variablen schreiben
my $IP_Netz = $ARGV[0] ; my $IP_Host_Start = $ARGV[1] ; my $IP_Host_Ende = $ARGV[2] ;
## Perl-Ping initialisieren
my $p = Net::Ping->new("icmp");
unless (defined $p) { die "Kann Objekt Net::Ping nicht erzeugen:\n $!\n";}
foreach my $IP_Host ( $IP_Host_Start .. $IP_Host_Ende ) {
my $Ip = "${IP_Netz}$IP_Host";
if ( $p->ping( $Ip, 2 ) ) {
print "== Host $Ip IST UP! ==\n";
print "LocalGroupDeleteUsers(\"\\\\$Ip\", \"$LocalGroup\", \"$User\")" ;
LocalGroupDeleteUsers("\\\\$Ip", "$LocalGroup", "$User") or print "LocalGroupDeleteUsers() failed:\n$^E\n";
## Hiermit kann ein User in eine Gruppe aufgenommen werden
#print "LocalGroupAddUsers(\"\\\\$Ip\", \"$LocalGroup\", \"$User\")\n";
#LocalGroupAddUsers("\\\\$Ip", "$LocalGroup", "$User") or print "LocalGroupAddUsers() failed:\n$^E\n";
print "\n";
}
else {
print "PC $Ip ist NICHT ERREICHBAR!\n";
}
}
JoernBruns/perl/netAdminLocalGroupDeleteUsers (zuletzt geändert am 2008-11-03 14:16:23 durch JoernBruns)