florianhh
Goto Top

Batch soll bestimmte Zeilen auslesen und ersetzen, aber wenn ich eine Zeile einfüge welche eine Klammer enthält startet die Batch Datei nicht...

Hallo zusammen,
ich hoffe ihr könnt mir helfen face-smile!

Ich habe folgendes Problem:

Ich möchte, dass die Batch-Datei eine Quelldatei öffnet, welche ich definiert habe. Diese Text-Datei enthält mehrere Zeilen, welche ausgelesen und durch eine andere Zeile ersetzt werden sollen.

Die Batch-Datei funktioniert so lange bis ich eine Zeile eingebe die verändert werden soll, wo eine Klammer "()" enthalten ist...
(Zumindest erscheint es mir so, dass es an der Klammer liegt, da die Batch die ganze Zeit funktioniert hat. Aber jetzt wo eine Zeile mit einer Klammer dabei ist funktioniert es nicht mehr).

Im unteren Code funktioniert die erste Zeile allein ohne Probleme:
SET ganze_zeile=!ganze_zeile:# DE0000000000000000000000000000001 Standort1 Name=# DE0000000000000000000000000000001 DE0000000000000000000000000000001 1-1:1.9.1 Standort1 Name!

aber sobald ich die zweite hinzufüge:
SET ganze_zeile=!ganze_zeile:# DE0000000000000000000000000000002 Standort2 (Name)=# DE0000000000000000000000000000002 DE0000000000000000000000000000002 1-1:1.9.1 Standort2 Name!

startet die Batch-Datei nur ganz kurz und schließt sich direkt wieder ohne dass ich etwas erkennen kann und die Ausgabe Datei wird nicht erstellt.


Hier meien komplette Batch-Datei:
echo off

SETLOCAL enabledelayedexpansion

SET quelle=test.txt
SET ziel=ausgabe.txt


FOR /f "delims=" %%i IN ('FINDSTR . %quelle%') DO (  
SET ganze_zeile=%%i

SET ganze_zeile=!ganze_zeile:# DE0000000000000000000000000000001 Standort1 Name=# DE0000000000000000000000000000001 DE0000000000000000000000000000001 1-1:1.9.1 Standort1 Name!

SET ganze_zeile=!ganze_zeile:# DE0000000000000000000000000000002 Standort2 (Name)=# DE0000000000000000000000000000002 DE0000000000000000000000000000002 1-1:1.9.1 Standort2 Name!


ECHO !ganze_zeile!
ECHO !ganze_zeile! >> %ziel%
)

(Text rausgenommen von mir. War aufgrund von nicht Wissen etwas böse)
Sie funktioniert face-smile... eigentlich... Zumindest so lange bis ich eine Zeile einfüge, die eine Klammer aufweist..

Kann es an der Klammer liegen?
Wenn ja, habt ihr einen Lösungsvorschlag oder einen Tip wie ich das anders schreiben kann?
Wenn nein, dann hab ich glaube ich ein Problem, weil sonst ist nichts anders an den Zeilen.


Vielen Dank schonmal für eine Antwort oder einen Tipp!!!


MfG
Flo

Content-Key: 163042

Url: https://administrator.de/contentid/163042

Printed on: April 24, 2024 at 22:04 o'clock

Mitglied: 60730
60730 Mar 21, 2011, updated at Oct 18, 2012 at 16:46:14 (UTC)
Goto Top
Moin,

startet die Batch-Datei nur ganz kurz und schließt sich direkt wieder ohne dass ich etwas erkennen kann und die Ausgabe Datei wird nicht erstellt.
ist ja beim führenden kein Kunststück.. face-sad

einen Profi ist sie bestimmt nicht schön, aber sie funktioniert face-smile... eigentlich...
Da das ein leicht umgestrickter ist - ist die Zeile aber wirklich böse....

btw: Weißt du eigentlich, was du da machst?
  • Zuerst setzt du eine Variable mit einem INhalt und den änderst du und der geänderte Inhalt soll nochmal geändert werden face-sad

Klick meine blauen Buchstaben an und liess dir die Infos durch....

Gruß
Member: FlorianHH
FlorianHH Mar 21, 2011, updated at Oct 18, 2012 at 16:46:14 (UTC)
Goto Top
Hey,

Danke erstmal für die Antwort!

ist ja beim führenden kein Kunststück.. face-sad

Okay wusste ich nicht (neuling :S)... Danke schonmal für den Tipp!

Da das ein leicht umgestrickter ist -
ist die Zeile aber wirklich böse....

Echt? Das tut mir Leid!!! Hab die letzte Woche irgendwo im Netz gefunden, aber es war definitiv nicht hier face-sad

btw: Weißt du eigentlich, was du da machst?
  • Zuerst setzt du eine Variable mit einem INhalt und den änderst du und der geänderte Inhalt soll nochmal geändert
werden face-sad

Nein nicht sicher... wie gesagt gefunden und bisschen dran rumgebastelt... Sie funtkionierte und ich war erstmal glücklich... :/


Gruß
Flo
Member: bastla
bastla Mar 21, 2011 at 11:53:53 (UTC)
Goto Top
@t-mo
Da das ein leicht umgestrickter Bastla ist
Na hoffentlich nicht wirklich ... face-wink

@FlorianHH
Versuch es so:
SET "ganze_zeile=!ganze_zeile:# DE0000000000000000000000000000002 Standort2 (Name)=# DE0000000000000000000000000000002 DE0000000000000000000000000000002 1-1:1.9.1 Standort2 Name!" 
Grüße
bastla
Member: FlorianHH
FlorianHH Mar 21, 2011 at 12:12:16 (UTC)
Goto Top
Hey bastla,

Danke funktioniert einwandfrei face-smile!!!

Gruß
Flo