Bat datei ausgabe in cmd tool

  • Hi Leute :)

    ich habe ein cmd tool (welches mit parametern gestartet werden muss)
    und möchte darin automatisch eingaben vornehmen am besten aus einer bat datei die nebenher mit läuft und die aus deren ausgaben sollen dann im tool eingegen werden.

    programm.exe /ip [IP Adresse] /p [password] dann erscheint im programm
    Input:> [hier die ausgaben aus der Bat datei] wenn das programm das erledigt hat:
    [ausgabe vom programm]
    Input:> [hier eine andere eingabe von der bat datei]
    usw.

    ich hoffe ihr habt verstanden und es kann mir jemand helfen :)

    greets Pr0vieH

    • Offizieller Beitrag

    :willkommen:

    Leider verstehe ich nicht genau, was du meinst. Vielleicht kannst du mit realen Beispielen statt abstrakt arbeiten, das erleichtert die Sache ungemein. Wenn du Links, Downloads oder Codes hast - umso besser.

    Noch etwas Grundsätzliches: Die meisten bat-Dateien lassen sich sehr gut in AutoIt umsetzen, wobei da einige Zusatzfeautres aus der Windows-Welt zur Verfügung stehen wie MsgBox, komplette GUIs und so weiter. Kommt aber eben auf deinen konkreten Fall an, ob das sinnvoll ist, diese Datei umzuwandeln.

    Die Ausgabe eines DOS-Fensters kannst du mit StdOutRead lesen (siehe Hilfe).

    peethebee

  • schöne funktion um vorher zu testen ob der Port offen ist auf dem Rechner:

    Code
    TcpConnect( IP , port )
    if @error then notconnectet

    programm starten:

    Code
    Programm.exe /ip IPAdresse /p password /r (r steht für Record Session log.log)

    im Programm:

    welches in der log.log aufgezeichnet wird dann soll er z.B. local auf meinem rechner (in normaler cmd nicht im Programm) in der log.log nach z.B. Windows suchen wenn er Windows findet

    Locale CMD:

    Code
    find "Programme" log.log >nul
    if not errorlevel 1 goto a
    if errorlevel 1 goto b
    goto a

    wieder im Programm:

    Code
    c:\programme\Java\dir


    Output sieht ähnlich aus ;)

    Locale CMD

    Code
    find "jre1.5.0_06" log.log >nul
    if not errorlevel 1 goto ende
    if errorlevel 1 goto nichtda

    Locale CMD

    Code
    :nichda 
    Java nicht Installiert oder andere Version >>IP.log

    für IP soll dort die oben eingegebene IP erscheinen damit wir auch wissen welcher rechner es ist :)

    Locale CMD

    Code
    goto b

    Im Programm

    Code
    c:\program files\Java\dir


    Output sieht ähnlich aus ;)

    Locale CMD

    Code
    find "jre1.5.0_06" log.log >nul
    if not errorlevel 1 goto ende
    if errorlevel 1 goto nichtda

    Locale CMD

    Code
    :nichda (locale cmd)
    Java nicht Installiert oder andere Version >>IP.log

    also grob gesagt ich benötige einmal die möglichkeit etwas im programm automatisch einzugeben und auch die locale cmd um in der log zusuchen die festlegt wie es weiter geht im programm :)

    ich hoffe das ist etwas verständlicher :)

    2 Mal editiert, zuletzt von Pr0vieH (28. August 2006 um 11:09)

  • hmm naja weil das programm auf einen anderen rechner connectet.... und zwar über MSSQL mit xp_cmdshell das tool nennt sich Sqlshell2 mit dem tool kann man zu der cmd vom mssql server connecten und damit wollte ich die ganze sache automatisieren und ich weiß nicht ob man diese funktion mit autoit nachprogrammieren kann... wenn ja, ich wüsst nicht wie :/ deswegen habe ich an die andere variante gedacht einfach das tool aus einer bat zu füttern :)
    da einige sachen auf allen sql server überprüft werden müssen und alle per hand :/ und außerdem interessiert es mich selber :)

    greets Pr0vieH