PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Externer Prozess - batch-Datei



4313
25.04.2006, 13:14
Hallo zusammen,

ich bin mir nicht ganz sicher, ob das der richtige Ort für meine Frage ist:
Habe über externe Prozesse endlich (Dank diesem Forum!) meine batch-Datei zum Laufen bekommen.
Bräuchte nun eine Hilfe in Sachen Inhalt der Batch-Datei.
Meine Vorstellung: Bei jeder Telegramm-Übermittlung soll eine neue txt-Datei erstellt werden, die den Namen einer Variablen aus diesem Folgetelegramm enthält. Bisher ist es so, dass die txt-Datei weiter geschrieben wird, sie wird also irgendwann ziemlich groß & ziemlich unübersichtlich. Zur Verdeutlichung hier die batch:

################
@echo off

cd txt-dateien
echo %*>>7831.txt
pause
################

Keine Große Zauberei - angepasst an meine Kenntnisse.
Ich hoffe, ich habe meine Wünsche verständlich ausgerückt. Kann mir bitte jemand helfen?
Oder sollte man dies lieber über einen anderen externen Prozess regeln, wenn ja, wie?

Danke für die Hilfe!

felix000
25.04.2006, 13:57
Welche Parameter übergibst du und wie sind die im Crusader angegeben???

4313
25.04.2006, 14:27
Reicht Dir das? Wenn nicht, bitte noch mal Bescheid geben...

Danke!

felix000
25.04.2006, 14:45
Dann musst du den Parameter in der Batch splitten -->kompliziert

Welche Daten sollen in der Textdatei stehen???
Übergib die Parameter einzeln, dann ises einfacher...

4313
25.04.2006, 14:57
Das ist der Text der in der txt auftaucht:

25.04.06 11:50:03 7/83-1 # #7#A#?#34579 11:48# #baruche_ich_1_#brauche_ich_2# #brauche_ich_3# # #5542628#3445662#34579#11:50# (92) C:\Programme\Heirue-Soft\Crusader\batch\7831.bat

so soll er eigentlich aussehen:
25.04.06
11:50:03
7/83-1
34579
11:48
baruche_ich_1
brauche_ich_2
brauche_ich_3

Der Rest kann weg. Der Dateiname sollte in diesem Fall so aussehen:
7/83-1_34579_11:48.txt

Sehr komplieziert, aber so sind leider die Vorgaben.

Danke!

felix000
25.04.2006, 15:17
Gib mal statt '$1' '$4 "$5"' an.

In der Batch machstes so:


@echo off
CD txt-dateien
FOR /F "usebackq tokens=1,2 delims=: " %%a IN ('%time%') DO (
set zeit=%%a:%%b
set zeit2=%%a-%%b
)

echo %date% %zeit% %1 %2 >> %1_%zeit2%.txt


Woher kommt das '34579' in deinem Beispiel??? Kommt das im FMS-Text vor?? Hat der FMS-Text ein festes Schema??

4313
25.04.2006, 15:59
Gib mal statt '$1' '$4 "$5"' an.


Das habe ich nicht verstanden... Ich soll $1 als Argument weglassen und an Stelle was hinschreiben? $4 "$5"<??

Die Übertragung hat immer das selbe Schema. Die # sind vom Telegramm wohl die Trennungszeichen. Die >34579< ist die Auftragsnummer der Leitstelle.

Die batch werde ich mal umschreiben, Danke!

4313
25.04.2006, 16:17
Habe jetzt nur mal die batch geändert, die Argumente gelassen (da ich es nicht verstanden habe). Dann habe ich folgenden txt-Inhalt:

25.04.2006 16:14 25.04.06 16:14:40
25.04.2006 16:14 25.04.06 16:14:42
25.04.2006 16:14 25.04.06 16:14:45

Das heißt, die Daten vom Telegramm werden nicht mehr notiert.

Danke!

felix000
25.04.2006, 16:46
Das habe ich nicht verstanden... Ich soll $1 als Argument weglassen und an Stelle was hinschreiben? $4 "$5"??

Genau.

4313
25.04.2006, 16:52
Dann macht er gar nüschts mehr... Noch nicht einmal ein Testalarm. Sorry!

felix000
25.04.2006, 16:53
Welche Crusader-Version hast du??

4313
25.04.2006, 17:00
4.41

Bjoerni
25.04.2006, 20:49
Hallo,

könnt Ihr das Thema nicht über PN klären, weil das geht jetzt zu sehr ins Detail und hat meiner Meinung nach nicht unbedingt was in einem Forum zu suchen.

Gruß

Bjoerni

felix000
25.04.2006, 20:51
Sind schon dabei...*g*