Jump to content

WTS - Windows Terminalserver Benutzer abmelden Benutzer abmelden - Exclude Admin


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

Empfohlene Beiträge

Hallo.
Ich suche nun schon seit Stunden im Netz und Manuals. Und komme nicht weiter. Habe diverse Windows OS und möchte die Remote-Benutzer per CMD abmelden (nicht Powershell).
Soweit habe ich auch was sehr gutes gefunden.
Jedoch: Der Admin* oder auch der Administrator, oder auch eine Blacklist.txt sollen "nicht" abgemeldet werden.
Hmpf... Ich finde es nicht. :frown:

Das hier habe ich gefunden und funktioniert wunderbar.
Lasse ich als Task (System) ausführen. Möchte keinen Benutzer/PW hinterlegen. Nur es wird halt der Administrator auch mit abgemeldet.

 

@echo off
query session >session.txt
for /f "eol=> skip=2 tokens=1,2,3," %%i in (session.txt) DO (
 if "%%k" == "Getr." (
  REM Getrennte Verbindungen killen
  echo %%i %%j
  logoff %%j
 ) else (
  REM Aktive Verbindungen killen
  echo %%j %%k
  logoff %%k
 )
)
del session.txt
REM pause
:end

 

Hier die Ausgabe von: query session >session.txt

SITZUNGSNAME      BENUTZERNAME             ID  STATUS  TYP         GERŽT
 services                                    0  Getr.                       
>console           Administrator            10  Aktiv                       
 rdp-tcp#6         Mustermann               15  Aktiv                       
 rdp-tcp                                 65536  Abh”r.                      

 

Wärend ich das hier gerade schreibe... ist mein Gedankenansatz evtl. total falsch oder zu kompliziert?!?!
Ich sehe jetzt gerade im Script den Wert skip=2.
Könnte es sein, dass hier schon die Lösung liegt und dieser Wert definiert, dass die ersten 2 Zeilen ignoriert werden? Das wäre dann ein Ansatz wenn man sagen könnte: Ignoriere auch die Zeile mit dem Inhalt Admin*.

Nur wie kann ich das dann umsetzen. Bin gerade ein wenig verzeifelt.

Vielleicht kann mir jemand helfen. Das wäre nett.

VG, Lars

Link zu diesem Kommentar

Hallo Lars,

vor 18 Stunden schrieb Quickly1971:

Ich sehe jetzt gerade im Script den Wert skip=2

das bedeutet meines Wissens, dass die ersten beiden Zeilen, also die Überschrift und "Services" übersprungen werden.

vor 18 Stunden schrieb Quickly1971:

Ignoriere auch die Zeile mit dem Inhalt Admin*.

Hier würde ich die If-Anweisung verschachteln und nach dem Benutzer "Admin*" fragen, bzw. das er es nicht ist. Bsp. so (ungeprüft):

...

	if NOT %%benutzer == "Admin*" (

		if "%%k" == "Getr." (
			REM Getrennte Verbindungen killen
			echo %%i %%j
			logoff %%j
		) else (
			REM Aktive Verbindungen killen
			echo %%j %%k
			logoff %%k
		)

)

...

Wenn du noch andere Benutzer ausschließen willst, nimmt die CASE-Anweisung.

Link zu diesem Kommentar
  • 4 Wochen später...
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...