Strichpunkt gegen CR-Linefeed in Textdatei ersetzen
Hi Leute,
Ich habe eine TExtdatei, die von einem System automatisch erzeugt wird.
Dort stehen Emailadressen in einer langen Wurst drinnen, die immer durch ein Semikolon (;) getrennt sind.
Ich muss nun dafür sorgen, dass JEDE Adresse in einer Zeile steht und die Semikolons verschwinden
Speziell das Ersetzen ist für mich schwierig, da ich die Zeichencodes vom Zeilenumbruch nicht kenne ....
Habt ihr einen Tipp oder ein Codeschnipsel, wie ich das mit einer Batchdatei schaffe?
Ich habe eine TExtdatei, die von einem System automatisch erzeugt wird.
Dort stehen Emailadressen in einer langen Wurst drinnen, die immer durch ein Semikolon (;) getrennt sind.
email1@domain.com;email2@domain.com;email3@domain.com;email4@domain.com;email5@domain.com;email6@domain.com;
Ich muss nun dafür sorgen, dass JEDE Adresse in einer Zeile steht und die Semikolons verschwinden
email1@domain.com
email2@domain.com
email3@domain.com
email4@domain.com
email5@domain.com
email6@domain.com
Speziell das Ersetzen ist für mich schwierig, da ich die Zeichencodes vom Zeilenumbruch nicht kenne ....
Habt ihr einen Tipp oder ein Codeschnipsel, wie ich das mit einer Batchdatei schaffe?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 221615
Url: https://administrator.de/forum/strichpunkt-gegen-cr-linefeed-in-textdatei-ersetzen-221615.html
Ausgedruckt am: 23.12.2024 um 07:12 Uhr
9 Kommentare
Neuester Kommentar
Hallo pbelcl,
könntest du z.B. so machen:
Hier bist du aber wie @bastla schon erwähnt hat, eingeschränkt was die maximale Länge einer Zeile angeht (8.191 Zeichen) .
Mit der Powershell könntest du es so ohne Beschränkung machen:
Grüße Uwe
könntest du z.B. so machen:
@echo off & setlocal
set fileIN=test.txt
set fileOUT=test2.txt
for /f "usebackq delims=" %%a IN ("%fileIN%") DO @(
for %%b IN (%%a) DO @(echo %%b>>"%fileOUT%")
)
Mit der Powershell könntest du es so ohne Beschränkung machen:
Get-Content "E:\dateiIN.txt" | %{$_.Replace(";","`r`n")} | Set-Content "E:\dateiOUT.txt"
Hi,
sed for Windows benötigt double quotes (Zollzeichen), hier in colinardo's Beispiel gehts aber ganz ohne:
lg.
sed for Windows benötigt double quotes (Zollzeichen), hier in colinardo's Beispiel gehts aber ganz ohne:
sed s/;/\n/g file.txt
, der 'beste' sed-Befehl ist sed y/;/\n/ file.txt
, am allerbesten ist aber der 'Unix'-Befehl <file.txt tr ; \n
lg.