Seite 2 von 2 ErsteErste 12
Ergebnis 16 bis 29 von 29

Thema: Schleifendifferenzierung

  1. #16
    Registriert seit
    24.12.2005
    Beiträge
    59
    So, soweit haut alles super hin. Habe jetzt Clemail am laufen und würde gerne den Inhalt der alarm.txt als email Inhalt mitschicken. Das auslesen einzelner Zeilen ist kein Problem, aber wenn ich die ganze Datei auslesen will, scheitert es bei mir. Welchen Befehl soll ich verwenden, damit mir der Textdateinhalt als %text% zur verfügung steht??

  2. #17
    Registriert seit
    23.10.2007
    Beiträge
    95
    hallo,
    ich weis die Beiträge sind schon etwas älter, aber hat jemand eine entgültige lösung? bzw batch??

    mfg Skyfire

  3. #18
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    Meine von damals läuft immer noch...
    Felix
    felix[null][null][null]@funkmeldesystem.de

  4. #19
    Registriert seit
    23.10.2007
    Beiträge
    95
    ja okay, kannst du mal deine batch datei zeigen und erklären, für was die einzelen befehle sind weil ich steig da net ganz durch...

    danke

    mfg skyfire

  5. #20
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    In einer Konsole:

    help befehl

    Dann weißt du was die Befehle machen.
    Felix
    felix[null][null][null]@funkmeldesystem.de

  6. #21
    Registriert seit
    23.10.2007
    Beiträge
    95
    ja gut so weit bin ich auch gekommen, aber ich kann mir diese Zeilen nicht erklären

    FOR /F "usebackq tokens=1,2,3 delims=: " %%a IN ('%time%') DO set zeit=%%a:%%b
    if exist alarm.txt goto abbruch
    echo %Zeit% Einsatz FF 1>>D:\sms\alarm.txt
    @echo !!!Alarm FF Schleife 1!!!
    echo Alarmierung %Zeit% - warte auf weitere Schleifen:
    wait 10

    was genau führen die aus?

    gruß

  7. #22
    Registriert seit
    24.12.2005
    Beiträge
    59
    Zitat Zitat von skyfire Beitrag anzeigen
    ja gut so weit bin ich auch gekommen, aber ich kann mir diese Zeilen nicht erklären

    FOR /F "usebackq tokens=1,2,3 delims=: " %%a IN ('%time%') DO set zeit=%%a:%%b
    if exist alarm.txt goto abbruch
    echo %Zeit% Einsatz FF 1>>D:\sms\alarm.txt
    @echo !!!Alarm FF Schleife 1!!!
    echo Alarmierung %Zeit% - warte auf weitere Schleifen:
    wait 10

    was genau führen die aus?

    gruß
    Die erste Zeile schreibt die aktuelle Zeit in die Variable Zeit, die du dann immer aufrufen kannst mit %zeit%.
    Zeile 2 ist für den Ausschluss einer Doppelauswertung verantwortlich.
    Zeile 3 schreibt schließlich Zeit und Schleife 1 in die Datei D:\sms\alarm.txt (wird erstellt, falls noch nicht vorhanden!).
    Zeile 4 ist nur für die Orientierung in der Barch.
    Schließlich wartet das Skript in noch 10 Sekunden auf weitere Alarmierungen.

    Um endgültig auf deine Frage zu Antworten: Hab das Skript umfangreich erweitert, ein paar mal umgebaut und schließlich mit ner GUI geschrieben (andere Sprache, ohne Stapelverarbeitung, Batch deaktiviert), die auf unsere Feuerwehr angepasst ist. Ich versende mit der damaligen Idee inzwischen für 8 Schleifen mit BANI-SMS und SMS-Trade unsere Alarm-SMS.

    Edit: Hab mal die alten Batch-Auszüge von der vorigen Seiten von mir gelöscht, weil die ziemlich verbugt waren. Also besser damit nicht arbeiten!


    Grüße,
    Miles

  8. #23
    Registriert seit
    23.10.2007
    Beiträge
    95
    ja okay soweit hab ich es jetzt verstanden. kanst du mal deine entgültige version davon zeigen dann kann ich es an meine ansprüche anpassen...

    danke

    mfg skyfire

  9. #24
    Registriert seit
    24.12.2005
    Beiträge
    59
    Meine endgültige Version ist aber nicht mehr mit Batch. Habs in C geschrieben. Wird dir also nicht viel bringen, weil das Skript nur auf unsere Feuerwehr angepasst ist....
    Poste mal deine Batch, dann kann ich dir helfen,


    Grüße,

    Lukas

  10. #25
    Registriert seit
    23.10.2007
    Beiträge
    95
    ja danke hab die batch gerade nicht zur hand aber wie instaliere ich die Funktion wait?
    bei mir kommt immer der Fehler das diese Funktion nicht gibt...

    gruß

  11. #26
    Registriert seit
    24.12.2005
    Beiträge
    59
    Wait ist ansich keine Funktion, sondern ein kleines Tool (gibts hier im Forum, mal die Suche benutzen). Mit dem Aufruf wait *Blank* *Zeit in Sekunden* wird deine Batch um die angegebene Zeit pausiert. Also z.B.

    IF EXIST C:\sms.txt goto warten

    :warten
    wait 100
    goto ende
    :ende

    Wenn die Datei C:\sms.txt auf der C-Partition liegt, wartet die Batch 100s und beendet sich dann.
    Wait eignet sich also z.B. um auf andere alarmierte Schleifen zu warten....
    Wichtig ist der Blank (also Leerzeichen) zwischen wait und der Zeitangabe....
    Geändert von Miles (16.01.2010 um 00:12 Uhr)

  12. #27
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    Zitat Zitat von Miles Beitrag anzeigen
    IF EXIST C:\sms.txt
    wait 100
    goto ende
    :ende
    Der Code stimmt aber nicht ganz...
    Felix
    felix[null][null][null]@funkmeldesystem.de

  13. #28
    Registriert seit
    24.12.2005
    Beiträge
    59
    War ja nur ein Beispiel... ;-)

    IF EXIST "C:\sms.txt" goto warten

    :warten
    wait 100
    goto ende

    :ende

    Ich hasse die goto-Verzweigungen, deswegen auch C und nicht mehr Batch! ;-)

  14. #29
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    Man kann ja auch Klammern:

    if exist datei.txt (
    echo 1
    echo 2
    ) else (
    echo 3
    echo 4
    )
    Felix
    felix[null][null][null]@funkmeldesystem.de

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •