Jump to content

Skript soll alle Workstations + Benutzer anzeigen


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

Empfohlene Beiträge

....Eigentlich exakt was der OP wollte....es.
Der Wunsch des TO ist:
...den Befehl oder ein Skript, dass mir alle eingeschalteten Workstations mit den dort gerade angemeldeten Benutzern im Netzwerk auswirft.
Und das erfüllt psloggedon aus meiner Sicht nicht.

 

Es ist natürlich zu fragen, wie aktuell braucht der TO die Angaben zu welchem Zweck? Falls die Toleranz im Rahmen der Aktualsierung der Browserlist liegt, dann kann diese selbstverständlich als Basis genommen werden.

Link zu diesem Kommentar

Mal sehen ob man deine Sichtweise verbessern kann:

 

@Echo off

for /F "tokens=1" %%i in ('type usr.txt') do call :wks %%i

@Echo Fertig

goto eot

:wks

psloggedon -l %1

:eot

--

Die Ausgabe kann auch noch verbessert werden, halt basteln. Nur als Beweis reicht das völlig.

 

Irgendwas wird ja bekannt sein, in diesem Fall die Benutzernamen in der Textdatei, auch einen DC setze ich in diesem Fall vorraus, oder per LDAP aus dem AD pflücken- gibt mehrere Wege.

Es geht auch anders herum, Liste der Workstation..und ohne DC... eine Aufgabe für dich als Batchschreiber?

Link zu diesem Kommentar

Hi

 

Dieses als vbs speichern und ins Anmeldescript packen, der servershare ist anzugeben.

Damit wird dann bei jedem Login eines Benutzers auf den Servershare in Form von

Rechnername_UserID.log eine Datei kreiert.

 

Set fs = CreateObject("Scripting.FileSystemObject")

Set wshnet = CreateObject("WScript.Network")

 

Do While wshNet.username = ""

WScript.Sleep 250

Loop

 

strComputerName = wshNet.computerName

strUserName = wshNet.userName

strDomainName = wshNet.userDomain

 

If not fs.FolderExists("\\server\share$\Logs\") Then fs.CreateFolder("\\server\share$\Logs\")

Set logfile = fs.CreateTextFile("\\server\share$\Logs\" & strComputerName & "_" & strUserName & ".log",8)

 

strMsg = "" & strUserName & vbCRLF & strComputerName & vbCRLF & strDomainName & vbCRLF & Date & vbCRLF & time & vbCRLF

 

logfile.write(strMsg)

 

logfile.close

 

 

Ist doch die einfachste Option, denke ich mal so...

 

Ansonsten:

 

Nimm die Text-Datei (Clients.txt), die alle Deine Rechnernamen beinhaltet (untereinander)

und schreib Dir diese Batchdatei:

 

Start.bat

for /f "delims=" %%i in (Clients.txt) do psloggedon -l -x \\%%i|findstr /v "NT-AUTOR logged">> %%i.txt

 

psloggedon benötigst Du natürlich auch.

 

Alle in ein Verzeichnis packen (Clients.txt, Start.bat, psloggedon.exe) und Starten.bat ausführen.

 

Fertig

 

Allerdings ist das Ergebnis (mit psloggedon) schlecht weiterzuverarbeiten, mir gefällt das mit dem automatischen Erzeugen der Logindaten besser.

 

Gruß Inti29

Link zu diesem Kommentar
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...