Zeichen am Ende einer Zeile hinzufügen
und "," durch "." ersetzen.
Hallo,
ich hab ein kleines Problem. Ich hab eine .txt Datei bei der ich am Ende jeder Zeile ";;" (2 Semikolon) hinzufügen soll. Außerdem sollen die "," mit "." ersetzt werden zur Not über Suchen und Ersetzen.
Kann mir jemand helfen und mir sagen wie ich eine kleine Batch Datei schreib oder ein Makro mach?
Mit freundlichen Grüßen
Jackson
Ps.: Dank euch schon einmal im Voraus.
So sieht eine Zeile im Moment aus "9;10041037;0,36" und so sollte sie aussehen "9;10041037;0.36;;"
Hallo,
ich hab ein kleines Problem. Ich hab eine .txt Datei bei der ich am Ende jeder Zeile ";;" (2 Semikolon) hinzufügen soll. Außerdem sollen die "," mit "." ersetzt werden zur Not über Suchen und Ersetzen.
Kann mir jemand helfen und mir sagen wie ich eine kleine Batch Datei schreib oder ein Makro mach?
Mit freundlichen Grüßen
Jackson
Ps.: Dank euch schon einmal im Voraus.
So sieht eine Zeile im Moment aus "9;10041037;0,36" und so sollte sie aussehen "9;10041037;0.36;;"
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 66821
Url: https://administrator.de/contentid/66821
Ausgedruckt am: 26.11.2024 um 05:11 Uhr
11 Kommentare
Neuester Kommentar
Hallo CJackson und willkommen im Forum!
Versuch es einmal so:
Grüße
bastla
P.S.: Dein Beitrag würde eher in "Entwicklung / Programmiersprachen / Batch & Shell" passen ...
P.P.S.: Allerdings solltest Du dort nicht Dank euch schon einmal im Vorraus. schreiben, und schon gar nicht mit "rr" ...
Versuch es einmal so:
@echo off & setlocal
set "Alt=D:\Alt.txt"
set "Neu=D:\Neu.txt"
if exist "%Neu%" del "%Neu%"
for /f "usebackq delims=" %%i in ("%Alt%") do set "Zeile=%%i" & call :ProcessLine
goto :eof
:ProcessLine
echo %Zeile:,=.%;;>>"%Neu%"
goto :eof
Grüße
bastla
P.S.: Dein Beitrag würde eher in "Entwicklung / Programmiersprachen / Batch & Shell" passen ...
P.P.S.: Allerdings solltest Du dort nicht Dank euch schon einmal im Vorraus. schreiben, und schon gar nicht mit "rr" ...
Hallo CJackson!
Der Code sähe so aus:
Wenn Du wirklich gefragt werden wolltest, müsstest Du die Zeilen 2 und 3 auf etwas in dieser Art ändern:
Vielleicht noch eine Variante 3 dazu:
Hier würde automatisch die Originaldatei mit dem Zusatz ".bak" versehen als Sicherungskopie gespeichert bleiben - Vorteil: Da nur ein Parameter übergeben werden muss, könnte auch Drag&Drop verwendet werden.
Grüße
bastla
... Möglichkeit ? das mich die .bat nach dem Speicherort der Datei frägt ...
Mehrere; üblicherweise würde man/frau die beiden Dateipfade beim Aufruf mitliefern, also etwa so starten:ConvertAndAdd2Semicolons.bat D:\Alt.txt D:\Neu.txt
@echo off & setlocal
set "Alt=%~1"
set "Neu=%~2"
if exist "%Neu%" del "%Neu%"
for /f "usebackq delims=" %%i in ("%Alt%") do set "Zeile=%%i" & call :ProcessLine
goto :eof
:ProcessLine
echo %Zeile:,=.%;;>>"%Neu%"
goto :eof
set /p "Alt=Originaldatei?_"
set /p "Neu=Konvertierte Datei?_"
set "Neu=%~1"
set "Alt=%Neu%.bak"
move "%Neu%" "%Alt%"
Grüße
bastla