BAT - Leerzeilen in txt löschen
Habe folgende Zeilen im Internet gefunden, die es ermöglichen sollten - jedoch einen kleinen Fehler beinhalten...
@echo off
FOR /F "delims=" %%f IN (%1) DO echo %%f >> temp.txt
del %1
ren temp.txt %1
Schönen guten Nachmittag.
Mein Problem ist:
Ich habe eine txt, csv Datei die jedoch erst formatiert gehört...
Derzeit in folgendem Schema:
[quote]
xyz bla abc;
;1564
abc def;
;892
adfs;
;1234
[quote]
D.h. ich habe in unregelmäßigen Abständen eine Leerzeile drinnen dich ich im ersten Schritt mal entfernen möchte.
Jedoch wenn ich folgenden Batch-Code ausführe:
Werden mir nich nur Leerzeichen, sondern auch diese Zeilen gelöscht wo zuerst ; Steht und dann die Zahl...
Ich hätte aber gern nur die Leerzeilen gelöscht...
Im zweiten Schritt (eigene bat-Datei) würde ich dann gerne jede zweite Zeile eine Zeile nach oben holen...
Also aus:
[quote]
xyz bla abc;
;1564
abc def;
;892
adfs;
;1234
[quote]
wird dann:
[quote]
xyz bla abc;1564
abc def;892
adfs;1234
[quote]
Sprich er muss ";2349" eine Zeile nach oben ans Ende holen und dann evtl. noch eines der ; löschen, das ist aber nicht so wichtig.
Lg
Mein Problem ist:
Ich habe eine txt, csv Datei die jedoch erst formatiert gehört...
Derzeit in folgendem Schema:
[quote]
xyz bla abc;
;1564
abc def;
;892
adfs;
;1234
[quote]
D.h. ich habe in unregelmäßigen Abständen eine Leerzeile drinnen dich ich im ersten Schritt mal entfernen möchte.
Jedoch wenn ich folgenden Batch-Code ausführe:
@echo offFOR /F "delims=" %%f IN (%1) DO echo %%f >> temp.txt del %1ren temp.txt %1
Werden mir nich nur Leerzeichen, sondern auch diese Zeilen gelöscht wo zuerst ; Steht und dann die Zahl...
Ich hätte aber gern nur die Leerzeilen gelöscht...
Im zweiten Schritt (eigene bat-Datei) würde ich dann gerne jede zweite Zeile eine Zeile nach oben holen...
Also aus:
[quote]
xyz bla abc;
;1564
abc def;
;892
adfs;
;1234
[quote]
wird dann:
[quote]
xyz bla abc;1564
abc def;892
adfs;1234
[quote]
Sprich er muss ";2349" eine Zeile nach oben ans Ende holen und dann evtl. noch eines der ; löschen, das ist aber nicht so wichtig.
Lg
Please also mark the comments that contributed to the solution of the article
Content-Key: 129066
Url: https://administrator.de/contentid/129066
Printed on: April 25, 2024 at 15:04 o'clock
2 Comments
Latest comment
Moin n10n50,
willkommen im Forum.
alternativ kannst du den undokumentierten Defaultwert für Kommentarzeilen "eol=;" überschreiben.
Beispiel:
Grüße
Biber
willkommen im Forum.
alternativ kannst du den undokumentierten Defaultwert für Kommentarzeilen "eol=;" überschreiben.
Beispiel:
FOR /F "eol= delims=" %%f IN (bla.txt) DO @echo %%f
-oder explizite Angabe eines nicht vorkommenden Zeichens-
FOR /F "eol=§ delims=" %%f IN (bla.txt) DO @echo %%f
Grüße
Biber