Zeilen in Textdatei ersetzen - konditionaler Aufruf
Verfasst: 06 Okt 2022, 09:03
Ich steh grad etwas auf dem Schlauch. Ich will in einer Textdatei Textzeilen ersetzen, allerdings nur, wenn das Suchmuster existiert. Mit PatchTextFile kann ich ja die Datei editieren, aber wenn nichts dem Suchmuster entsprechendes gefunden wird, dann bleibt der Zeilencursor auf Zeile 1 stehen und die Ersetzung/Einfügung wird oben eingefügt. Übersehe ich was, oder kann ich PatchTextfile für so nicht einsetzen?
und wenn ich die Sektionen dann so aufrufe:
PatchTextFile_Disable_UpdateCheck "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
PatchTextFile_Set_Locale "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
PatchTextFile_Enable_TLS13 "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
habe ich nach dem x-ten Aufruf entsprechend viele Zeilen oben in der Textdatei, die ich nicht brauchen kann.
Code: Alles auswählen
[PatchTextFile_Disable_UpdateCheck]
FindLine_Containing '<add key="checkForNewerVersions" value="true" />'
DeleteTheLine
InsertLine ' <add key="checkForNewerVersions" value="false" />'
[PatchTextFile_Set_Locale]
FindLine_Containing '<add key="cultureName" value="en-US" />'
DeleteTheLine
InsertLine ' <add key="cultureName" value="de-DE" />'
[PatchTextFile_Enable_TLS13]
FindLine_Containing '<add key="enableTls13" value="false" />'
DeleteTheLine
InsertLine ' <add key="enableTls13" value="true" />'
PatchTextFile_Disable_UpdateCheck "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
PatchTextFile_Set_Locale "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
PatchTextFile_Enable_TLS13 "%ProgramFiles32Dir%\CalDavSynchronizer\CalDavSynchronizer.dll.config"
habe ich nach dem x-ten Aufruf entsprechend viele Zeilen oben in der Textdatei, die ich nicht brauchen kann.