kuehnlm 10 Posted July 29, 2004 Report Posted July 29, 2004 Hallo, ich hab mal wieder ein kleines Problem mit Batching. In einer Text-Datei habe ich Ausdrücke wie: SERVICE_NAME: wuauserv TYPE : 20 WIN32_SHARE_PROCESS STATE : 1 STOPPED (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 SERVICE_NAME: lanmanworkstation TYPE : 20 WIN32_SHARE_PROCESS STATE : 4 Running (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 Wie kann ich jetzt mit ner Batch auslesen, welcher Status welcher Dienst hat...? Ausgabe in Text-Datei - also irgendwie so: wuauserv - stopped lanmanworkstation - running Geht das?? Thanks Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Hallo, das geht mit der Textiteration der For-Schleife. Sagt Dir das etwas? Sonst gebe ich gern weitere Hilfe. In der Hilfe steht einiges dazu. Mit for /? an der Eingabeaufforderung gibt es auch was. Hier noch ein Leckerbissen. http://www.bb-sys.de/bbshell.htm Quote
kuehnlm 10 Posted July 29, 2004 Author Report Posted July 29, 2004 Sagt mir jetzt mal so nichts.... :( Magst Du mir helfen??? VIELEN DANK Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 http://www.bb-sys.de/bbshell.htm Sieh Dir obrige mal an! Ob Du damit klarkommst? Steht der auswertende Text in einer oder in zwei Dateien? Getrennt wäre es einfacher auszuwerten. Quote
kuehnlm 10 Posted July 29, 2004 Author Report Posted July 29, 2004 Wenn die alle in einer Datei stehen, dann hab ich's eigentlich schon geschrieben...aber das Problem ist dann, dass ich eine verschachtelte FOR-Schleife machen muß und das blick ich dann auch wieder nicht...:( Quote
kuehnlm 10 Posted July 29, 2004 Author Report Posted July 29, 2004 Blicks glaub net so ganz. Na ja, wenn nur ein Ausdruck drinsteht - also einmal Dienst... - dann ist das ja easy...:) Aber was mach ich mit dem Rest???? :rolleyes: Danke Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Ich programmiere mal los. Zur Entspannung in der Mittagspause. Ich nehme die beiden Blöcke in getrennte Dateien. Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Schritt 1 ---------- wuauserv.txt ---------------- SERVICE_NAME: wuauserv TYPE : 20 WIN32_SHARE_PROCESS STATE : 1 STOPPED (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 wuauserv.bat --------------------- set source=wuauserv.txt for /f %%i in (%source%) do echo %%i >> dump.txt pause dump.txt --------------------------- WAIT_HINT SERVICE_NAME: TYPE STATE (NOT_STOPPABLE, WIN32_EXIT_CODE SERVICE_EXIT_CODE CHECKPOINT WAIT_HINT Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Schritt 2 ---------- set source=wuauserv.txt for /f "tokens=4" %%i in (%source%) do echo %%i >> dump.txt pause WIN32_SHARE_PROCESS STOPPED (0x0) (0x0) Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Schritt 3 ---------- set source=wuauserv.txt for /f "tokens=4 skip=2" %%i in (%source%) do echo %%i >> dump.txt pause STOPPED (0x0) (0x0) Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Schritt 4 ---------- set source=wuauserv.txt for /f "tokens=4 skip=2" %%i in (%source%) do echo %%i >> dump.txt & goto end :end pause STOPPED Quote
kuehnlm 10 Posted July 29, 2004 Author Report Posted July 29, 2004 ich versuch das grad mal nachzustellen - damit ich das kapier... Quote
kuehnlm 10 Posted July 29, 2004 Author Report Posted July 29, 2004 Also, ich hab das mal nachgestellt und bin darauf gekommen: In der Tempdat2.txt steht der Ausdruck mit dem Dienst blabla drin. set source=tempdat2.txt for /f "tokens=2" %%i in (%source%) do echo %%i > dump.txt & goto weiter :weiter for /f "tokens=4 skip=3" %%i in (%source%) do echo %%i >> dump.txt & goto end :end pause Rauskommen tut dann folgendes: wuauserv STOPPED Krieg ich das jetzt noch irgendwie in eine Zeile?? Die andere Frage ist noch was gaaaaanz anderes: Hab ich die Möglichkeit den Inhalt einer Variablen in eine Text-datei zu schreiben? Vielen lieben Dank!!! Quote
lefg 276 Posted July 29, 2004 Report Posted July 29, 2004 Bisher wurde das Resultat zwecks Dokumentation in eine Datei geschrieben. Im nächsten Schritt geht es es eine Variable. Der Variableninhalt kann wieder ein eine Datei übertragen werden. Schritt 5 ---------- set source=wuauserv.txt for /f "tokens=4 skip=2" %%i in (%source%) do set var= %%i & goto end :end echo %var% echo %var% > dump.txt pause STOPPED Das erste echo schreibt auf den Bildschirm, das zweite in die Datei. In der Datei enthält der Ausdruck ein führendes und zwei nachlaufende unsichtbare Zeichen. Für Vergleichsoperationen müssten die eventuell noch entfernt werden. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.