Jump to content

kuehnlm

Members
  • Gesamte Inhalte

    83
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von kuehnlm

  1. Hallo,

     

    ich mal wieder und ein neues Problem:

     

    Ich les ne INI-Datei mit ner FOR-Schleife aus. Die INI sieht so aus:

     

    [stopped] uploadmgr Upload-Manager

    [stopped] UPS Unterbrechungsfreie Stromversorgung

    [Running] V2i Protector V2i Protector

    [stopped] vds Dienst für virtuelle Datenträger (VDS)

     

    OK - ist nur ein Ausschnitt - reicht aber zum Erklären.

    Mein Problem ist nun: Ich muß die zweite Spalte auslesen. also:

     

    for /f "tokens=2" %%i in (vorlage.ini) do echo %%i

     

    Das Problem ist nun, dass der Eintrag V2i Protector ein Blank zwischendrin hat.

    OK ich weiß, dass ich da wahrscheinlich was mit delims machen muß, aber nach der zweiten Spalte kommen Leerzeichen bis zum nächsten Wort...

     

    Wie muß ich denn das machen???

     

    supervielen Dank!!!

  2. Hallo,

     

    ich bekomme immer folgende EventLog Einträge auf den W2K3 Servern (W2K nicht!!):

    Event ID 7036

    Service Control Manager

     

    The Automatic Updates service entered the stopped state.

     

    Weitere Informationen über die Hilfe- und Supportdienste erhalten Sie unter http://go.microsoft.com/fwlink/events.asp.

     

    Und das nicht nur für den Dienst Automatische Updates, sondern noch viel mehr (liste jetzt nicht alle hier auf).

     

    Was ist das?? Warum bekomme ich diese Einträge???

    Hab schon mit Google gesucht, aber auch EventID.net hat keine Lösung!

     

    Danke für jede Hilfe oder Idee!!

  3. Hi,

     

    kann mir jemand erklären, wie ich einer CMD-Datei einen Parameter mitgeben kann, der nachher im Programm verwendet wird?

     

    Ich habe eine CMD-Datei geschrieben, die auch super läuft. Nun möchte ich aber dieser CMD-Datei den Parameter Computername mitgeben. Also so:

     

    test.cmd mycomputer

    test.cmd youcomputer

    etc.

     

    also, die CMD-Datei mit verschiedenen Computernamen aufrufen. Diese Namen sollen dann nachher in der CMD drin verwendet werden.

     

    DANKE für die Hilfe.

  4. Mir egal, wer mir das erklärt - ob lang oder kurz - auch wurschd...hauptsache ich kapiers nachher...

     

    hab jetzt schon ewig da rumprobiert - aber es werden immer zwei zeilen.

     

    set source=d:\scripts\temp\srvinfo.txt

    set dump=d:\scripts\temp\dump.txt

    set dump1=d:\scripts\temp\dump1.txt

    set dump2=d:\scripts\temp\dump2.txt

     

     

     

    for /F "tokens=2 skip=2" %%i in (%source%) do echo %%i>>%dump%

     

    pause

     

    for /f %%i in (%dump%) do set ServiceName=%%i&goto end

    :end

    echo %ServiceName% > %dump%

     

    pause

     

    REM Startup-Typ

    for /f "tokens=4 skip=2" %%i in (%source%) do echo %%i>>%dump2%

     

    for /f "skip=1" %%i in (%dump2%) do echo %%i>>%dump%&goto end2

    :end2

    pause

     

     

    das mach ich und dann gibt's zwei zeilen..........und nu??

  5. Ganz generell und auch zum Thema:

     

    Ich habe folgenden Ausdruck

     

    wuauserv

    Demand_Start

     

    in einer Textdatei stehen. Beide Wörter kommen nacheinander durch Selektion in einer FOR-Schleife dort rein.

     

    Aber ich wollte eigentlich gerne, dass die Begriffe in einer Zeile (und am besten noch zusammengeschrieben) dort stehen.

     

    Wie gekomme ich nach dem ersten Eintrag wuauserv das Leerzeichen hintendran und auch den Zeilenumbruch raus??

     

    DAAANKE

  6. Hi,

     

    am besten ist es, das Zeug aus dem Papierkorb gleich zu löschen. Papierkorb - Eigenschaften - Sofort löschen...

    dann ist alles weg.

     

    Cookies - Du kannst beim Abmelden ein Script laufen lassen, welches die Cookies löscht. Da gibts was unter dem Gruppenrichtlinien - da kann man Scripts beim Abmelden dazufügen.

     

    Grüße

  7. 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!!!

  8. 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

  9. Hallo,

     

    ich hab jetzt folgendes gemacht - tut auch soweit, aber vielleicht kann mir jemand sagen, wie ich %status% wieder leer bekomme - also ein set status=

     

    for /F "tokens=2" %%i in (%TempDat%) do (

    %sc% \\%computername% query %%i > %tempdat2%

    ( for /F "skip=3 tokens=4" %%a in (%tempdat2%) do if not defined status set status=%%a

    echo %status%)

    )

     

    An welcher Stelle muß ich nun das set status= setzen??

     

    Danke

  10. Hallo,

     

    ich hab ein kleines Problem - für Hardcore-Batcher sicherlich nicht :)

     

    Ich habe folgende Problemstellung:

    In einer Datei tempdat.txt stehen Dienstnamen und Dienststati drin - das sieht dann so aus:

    [stopped] AppMgmt

    [stopped] BITS

    [stopped] wuauserv

     

    Für alle Dienste in der Datei tempdat.txt führe ich dann folgenden Befehl aus:

    for /F "tokens=2" %%i in (%TempDat%) do (

    sc start %%i

    )

     

    OK - funktioniert soweit.

    Dann möchte ich aber nacheinander überprüfen, ob die Dienste auch laufen...dazu hab ich mir das überlegt:

     

    for /F "tokens=2" %%i in (%TempDat%) do (

    %sc% \\%computername% query %%i > tempdat2.txt

     

    -> Damit steht jetzt mal der u.g. Ausdruck in der tempdat2.txt drin:

     

    SERVICE_NAME: AppMgmt

    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

     

    Anschließend möchte ich nun prüfen, ob der Status = Running ist, eine Meldung ins Eventlog (mit logevent.exe) schreiben und dann die for-Schleife ein zweites Mal durchlaufen für den nächsten Dienstnamen.

     

    Das hier hab ich mal angefangen...aber es tut irgendwie nicht....irgendwo fehlt noch was...aber was????

     

    for /F "tokens=2" %%i in (%TempDat%) do (

    %sc% \\%computername% query %%i > %tempdat2%

    for /F "skip=3 tokens=4" %%a in (%tempdat2%) do if not defined status set status=%%a

    if /I "%STATUS%" EQU "Running" (call %Logevent%) else (call %logevent2%)

    )

     

    Weiß da jemand weiter???

    Tausend Dank.

×
×
  • Neu erstellen...