Jump to content

Gruppen sperren mit Batch


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Die Variable %active% wird eingeführt. Ihr sind wahlweise die Werte yes oder no zu zuweisen.

c:

cd\

 

net group FfBM > c:\FfBM.txt

 

set active=yes

 

call :subwork %active%

pause

 

:subwork

echo %active%

set token=1

call :subfor

 

set token=2

set active=%%1

call :subfor

 

set token=3

set active=%%1

call :subfor

 

:eof

 

:subfor

echo %active%

for /F "tokens=%token% skip=6" %%e in (c:\FfBM.txt) do call :subuser %%e %active%

goto :eof

 

:subuser

set user=%1

if %user%"==Der" goto :eof

if %user%"==Befehl" goto :eof

if %user%"==wurde" goto :eof

net user %user% /active:%active%

pause

goto :eof

Geschrieben

Ein paar kleine Fehler beseitigt und einge Feinheiten eingebaut.

 

@echo off

c:

cd\

echo Geben Sie zum Aktivieren oder Deaktivieren der Konten yes oder no ein!

set /p active=

if %active%"==yes" goto main

if %active%"==no" goto main

exit

 

:main

net group FfBM > c:\FfBM.txt

call :subwork %active%

pause

exit

 

:subwork

set token=1

call :subfor

 

set token=2

call :subfor

 

set token=3

call :subfor

 

goto :eof

 

:subfor

for /F "tokens=%token% skip=6" %%e in (c:\FfBM.txt) do call :subuser %%e %active%

goto :eof

 

:subuser

set user=%1

if %user%"==Der" goto :eof

if %user%"==Befehl" goto :eof

if %user%"==wurde" goto :eof

echo %user%

net user %user% /active:%active%

goto :eof

Geschrieben

Auf die Tabelle in der Datei kann verzichtet werden.

 

@echo off

c:

cd\

echo Geben Sie zum Aktivieren oder Deaktivieren der Konten yes oder no ein!

set /p active=

if %active%"==yes" goto main

if %active%"==no" goto main

exit

 

:main

call :subwork %active%

pause

exit

 

:subwork

set token=1

call :subfor

 

set token=2

call :subfor

 

set token=3

call :subfor

 

goto :eof

 

:subfor

for /F "tokens=%token% skip=6" %%e in ('net group ffbm') do call :subuser %%e %active%

goto :eof

 

:subuser

set user=%1

if %user%"==Der" goto :eof

if %user%"==Befehl" goto :eof

if %user%"==wurde" goto :eof

echo %user%

net user %user% /active:%active%

goto :eof

Geschrieben

Im Programm gibt es drei Stellen mit goto. Nämlich am Ende von subwork, subfor und subuser. Die Zeile heisst jeweils goto :eof und hat die Wirkung eines Return. Es bewirkt die Rückkehr aus der subroutine hinten den Aufruf(Call).

 

Leicht zu übersehen ist der Doppelpunkt.

Geschrieben

@echo off

c:

cd\

 

set group=ffbm

 

set active=yes

rem set active=no

 

call :main

pause

exit

 

:main

call :subwork %active%

goto :eof

 

:subwork

set token=1

call :subfor

 

set token=2

call :subfor

 

set token=3

call :subfor

 

goto :eof

 

:subfor

for /F "tokens=%token% skip=6" %%e in ('net group %group%') do call :subuser %%e %active%

goto :eof

 

:subuser

set user=%1

if %user%"==Der" goto :eof

if %user%"==Befehl" goto :eof

if %user%"==wurde" goto :eof

echo %user%

net user %user% /active:%active%

goto :eof

 

Probiere es mal so. Ersetze ffbm durch einen Gruppennamen Deiner Wahl.

Ich habe diese und auch die vorherige Version eben am DC getestet.

 

set active=yes

rem set active=no

 

Setze nach Bedarf aktive=yes oder active=no

 

Gruß

Edgar

Geschrieben

ich kann mich irren aber du hast ja gesagt das ganze passiert zeitgesteuert oder ?

währe es da nicht viel einfacher den usern einfach zu diesem zeitpunkt die anmeldung zu verweigern ?(Im ad user eigenschaften -> profil -> erlaubte anmeldezeiten)

MFG Ancient

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...