iluj258
Goto Top

Batch Schleifen (pslogged on) Problem

Hallo
Ich bin neu im Forum und habe eine Frage:

Ich probiere für das Netzwerk meine Schule einen simplen Messenger zu schreiben
Das ganze Projekt soll eine Batch Datei werden aber es klappt leider nicht
Die " Kontakliste" basiert auf der Ausgabe der psloggedon.exe aus der Windows Systeminternals Sammlung

Aber:
Meine Batch Datei funktioniert nicht!

Messenger.bat

For /F %%i in ('psloggedon -x -') do echo %%i >> user
Rem Die Computer im Netzwerk werden mit denen an ihnen Angemeldeten User in dem Format Computername/Benutzername in die Datei "user" geschrieben

So weit funktioniert das ganze.
Nun will ich aber die Computernamen in der Datei "user" Variablen zuordnen
Die Variabeln sollen nach den Benutzernamen bennant sein

Also:
Rem Token 2 ist der Benutzername
for /F "tokens=2 delims=\" %%i IN (user) DO set /a %%i =%%i
Rem Token 1 ist der Computername
for /F "tokens=1 delims=\" %%a IN (user) DO set /a %%a =%%a

Nun habe ich Variablen gesetzt die so aussehen:
z.B.
lehrer=lehrer
pc1=pc1

Nun will ich aber das sie so aussehen:

lehrer=pc1

Wie kann ich das bewerkstelligen ?

Ich habe schon folgendes probiert:

set %%i=%%a

aber dann wir gesagt das %%a nicht definiert ist also bitte
Ich brauche Hilfe
Ich bin erst 14 und ein ziemlicher Anfänger in Batch und das Tool sollte bis morgen fertig werden
Da ich hier im Forum schon oft hilfreiche Dinge gelesen habe habe ich die Hoffnung das mir auch geholfen werden kann....

Ps: Entschuldigung für die Rechtschreibung und (falls es der Fall sein sollte) das ich etwas sehr sinnloses gesagt habe......

Content-Key: 125095

Url: https://administrator.de/contentid/125095

Printed on: April 23, 2024 at 14:04 o'clock

Member: iluj258
iluj258 Sep 16, 2009 at 12:53:44 (UTC)
Goto Top
Kann mir niemand helfen?
ICh hatte gehofft das bei 684 angemeldeten USer wenigstens ein Batch-Experte Dabei ist.......
Member: TsukiSan
TsukiSan Sep 16, 2009 at 13:05:45 (UTC)
Goto Top
Hallo iluj258,

mit 14 Jahren sollte man schon mal lernen, etwas geduldig zu sein. Hier im Forum gibt es sehr gute Experten!
Gib ihnen Zeit und genügend Infos und es wird dir geholfen!

Gruß
Tsuki
Member: iluj258
iluj258 Sep 16, 2009 at 13:37:51 (UTC)
Goto Top
Das kann ich gut verstehen aber der Tatendrang in mir ist gerad nunmal ziemlich gewaltig...^^
Auf gut Deutsch mir ist langweilig und das ist dass einzige wich gerade interessiert

Gruß Iluj258
Member: Biber
Biber Sep 16, 2009 at 13:40:13 (UTC)
Goto Top
Moin iluj258,

willkommen im Forum.

Versuch es mal so:
...
Rem Token 1 ist der Computername, Token 2 ist der Benutzername
for /F "tokens=1-2 delims=\" %%i IN (user) DO set %%i =%%j  
...

Bzw. teste erst mal am CMD-Prompt, was herauskommen würde.
for /F "tokens=1-2 delims=\" %i IN (user) DO @echo set %i =%j  

Der Schalter /a beim SET-Befehl heißt /a, weil er für was anderes ist. Den brauchst Du nicht.

Grüße
Biber
Mitglied: 81825
81825 Sep 16, 2009 at 13:40:56 (UTC)
Goto Top
Hi,

Zitat von @iluj258:
Auf gut Deutsch mir ist langweilig und das ist dass einzige wich gerade interessiert

Gegen Langeweile wüsste ich ein Gegenmittel: Einfach #Batch mal etwas stöbern, da findest du bestimmt viele interessante Informationen. face-big-smile
Member: iluj258
iluj258 Sep 16, 2009 at 13:53:51 (UTC)
Goto Top
Vielen Danke du bist meine Rettung
Es funktioniert bis jetzt 100%
Einfach perfekt!
Vielen Dank und falls ich noch weiter Probleme habe melde ich mich bei dir....

Gruß Iluj258
Member: iluj258
iluj258 Sep 16, 2009 at 14:14:27 (UTC)
Goto Top
Hallo
Ich bins nochmal..
Ich hab noch eine Frage:
Wie kann ich in einer Datei (bei mir "user") Text der nicht dem folgenden Format entspricht löschen?
Format :
Bla\Bla
Also wenn in meiner Datei steht:
user:
PC1\X
PC2\Y
Guest
Dann soll Guest entfernt werden


Gruß Iluj258
Member: bastla
bastla Sep 16, 2009, updated at Oct 18, 2012 at 16:39:21 (UTC)
Goto Top
Hallo iluj258 und willkommen im Forum!

Um Deine Geduld nicht über Gebühr zu strapazieren face-wink [Edit] Wie ich sehe, bereits zu spät ... [/Edit]:
for /F "tokens=1-2 delims=\" %%i IN ('findstr "\\" user') DO set %%i=%%j
Warum nach "\\" gesucht werden muss, findest Du mit "findstr /?" heraus ...

Grüße
bastla
Member: iluj258
iluj258 Sep 16, 2009 at 14:28:08 (UTC)
Goto Top
Trotzdem Danke an dich bastla
Ich hoffe derzeit nur auf eine Antwort auf meine 2. Frage...

Gruß Iluj258
Member: bastla
bastla Sep 16, 2009 at 14:33:49 (UTC)
Goto Top
Ich hoffe derzeit nur auf eine Antwort auf meine 2. Frage...
Die da wäre?

Grüße
bastla
Member: iluj258
iluj258 Sep 16, 2009 at 14:37:29 (UTC)
Goto Top
1 Post über deinem 1.

Zitat von @iluj258:
Hallo
Ich bins nochmal..
Ich hab noch eine Frage:
Wie kann ich in einer Datei (bei mir "user") Text der nicht
dem folgenden Format entspricht löschen?
Format :
Bla\Bla
Also wenn in meiner Datei steht:
user:
PC1\X
PC2\Y
Guest
Dann soll Guest entfernt werden


Gruß Iluj258

Member: bastla
bastla Sep 16, 2009 at 14:38:59 (UTC)
Goto Top
Wie jetzt? Vorher kannst Du es gar nicht erwarten, und dann testest Du meinen Vorschlag noch nicht einmal?

Deine gesuchte Antwort steht in meinem ersten Kommentar (ja, der Teil in der Klammer ist gemeint) ...

Grüße
bastla
Member: iluj258
iluj258 Sep 16, 2009 at 14:42:27 (UTC)
Goto Top
Entschuldigung .....
Ich hatte es für eine Antwort auf die erste Frage gehalten da der Edit kam: [Edit] Wie ich sehe, bereits zu spät ... [/Edit]:...
Wir nie Wirder vor kommen ich hoffe man kann mir den ersten Fehler im Forum verzeihen....
Member: bastla
bastla Sep 16, 2009 at 14:46:18 (UTC)
Goto Top
Hallo iluj258!
Wir nie Wirder vor kommen ich hoffe man kann mir den ersten Fehler im Forum verzeihen....
No problem ...

Grüße
bastla

P.S.: Worauf sich die zusätzliche Anmerkung bezog, kannst Du ja dem Link entnehmen (soviel zum Thema "Geduld" face-wink) ...
Member: iluj258
iluj258 Sep 16, 2009 at 14:49:25 (UTC)
Goto Top
Okay Danke für alles er ist fertig *freu*
Morgen gleich mal testen..

Gruß iluj258