1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Daten auslesen mit Batch Datei??

Discussion in 'Programmieren' started by mrcbeat, May 14, 2008.

Thread Status:
Not open for further replies.
  1. mrcbeat

    mrcbeat ROM

    Hallo zusammen,

    ich möchte gerade eine Batch Datei schreiben und komme dabei zu einer Frage.
    Mein Ziel ist es, ein Programm via Kommandozeile. welches auch dort funktioniert, aufrufen zu lassen. Das Aufrufen dieses Programms führt dazu, dass mir ein momentaner Messwert zurückgegeben wird.

    Nun: Ist es möglich mit einer Batch Datei diesen Wert, welcher in dem Cmd erscheint, auszulesen und in ein .txt-file zu kopieren???

    Danke im Voraus... Lg, MrCBeat
     
  2. Crow1985

    Crow1985 Ganzes Gigabyte

    In einer txt-Datei speichern kannst du folgendermaßen:

    echo Wert > Wert.txt (zumindest die einfache Art und Weise)

    Vorher solltest du die Bildschirmausgabe am besten als Variable festlegen.

    Eventuell sollte auch gleich das gehen:

    Programm.endung >> Wert.txt
     
  3. mrcbeat

    mrcbeat ROM

    Die Datei bekomme ich ohne Probleme erstellt. Jetzt finde ich nur im Netz noch keinen Hinweis, wie genau ich Standard-OUT (also die Bildschirmausgabe) als Variable erhalte und somit schreiben kann.
    Der von Dir direkte Weg, via ">>" erstellt lediglich ein leeres Text-File.

    Lg, MrCBeat
     
  4. mrcbeat

    mrcbeat ROM

    Also ich verzweifle so langsam an meiner Unwissenheit...

    Ich habe nun folgendes Batch-File erstellt:

    @echo off
    title Messwerte
    echo Abfragen des Wertes von M1
    c:\.....exe Node TAG >> wert.txt
    pause
    exit

    Pfade und Co stimmen natürlich. Ich habe diese nur hier geändert...

    Nun das Ergebnis ist ein leeres Textfile... Die einzige Ursache, die ich jetzt sehe ist, dass der Wert etwa mit 0.5 sekunden delay erst angezeigt wird. Kann es sein, dass da die Batch schlicht zu voreilig ist, und die Datei schon anlegt und "füllt" bevor das auszuführende Programm überhaupt Daten liefert?
    Hat jemand sonst eine Idee, bezüglich der Ursache?

    Danke im Voraus,

    MrCBeat
     
  5. TheD0CT0R

    TheD0CT0R Dr. h.c. Mod

    Wenn du aber
    direkt in die Konsole schreibst erscheint der Wert wie gewünscht?
     
  6. mrcbeat

    mrcbeat ROM

    So ist es... Es wird mir ja auch angezeigt über das Batch... Das Problem ist nur, dass der Wert nicht in das .txt-File übertragen wird, sondern dieses leer bleibt.

    Ich habe immermal einiges von "Standard-OUT" gelesen... Das könnte unter Umständen mein Problem lösen, jedoch weiß ich die genaue Syntax nicht...

    Lg, MrCBeat
     
  7. TheD0CT0R

    TheD0CT0R Dr. h.c. Mod

    Das wäre aber falsch. Bei einem Aufruf mit Umleitung der Ausgabe (> oder >>) sollte man am Bildschirm nichts mehr sehen.

    Vielleicht interpretiert dein Programm das >> wert.txt ja als weitere Parameter, so wie Node TAG. Teste die Umleitung mit einem einfachen Befehl, z.B. ipconfig /all > c:\ip.txt Du solltest auf dem Bildschirm bei diesem Aufruf nichts sehen, dafür sollte die komplette ipconfig-Ausgabe in der Datei landen. Wenn das geht ist schon mal nichts grundsätzliches an deinem System verbogen.
     
  8. Crow1985

    Crow1985 Ganzes Gigabyte

    Das geht, zumindest hab ich es gestern damit getestet.
    Auch mit dem von ihm geschriebenen Skript funktioniert das.


    Code:
    @echo off
    title Messwerte
    echo Abfragen des Wertes von M1
    ipconfig /all >> wert.txt
    pause
    exit
    
    Dieses Programm, gibt es die Zahlen nach Zufallsprinzip aus, oder wie funktioniert es in etwa?
     
  9. -nixnick-

    -nixnick- Halbes Megabyte

    hmmm. versuch mal nicht " >> text.txt"
    sondern nur "> text.txt"
    >> hängt es dran, > überschreibt die ganze datei damit.
    oder,mach das ganze mal ohne die leerzeichen
    "*.exe NODE Tag>>ausgabe.txt"
     
  10. TheD0CT0R

    TheD0CT0R Dr. h.c. Mod

    Ja, bei dir und mir schon... :rolleyes:
     
Thread Status:
Not open for further replies.

Share This Page