bufferm44
Goto Top

Zeile aus Batchdatei löschen

Die in der Suche gefundenen Lösungsansätze funktionieren leider nicht.

Hallo!

Ich versuche gerade krampfhaft aus einer Textdatei eine vorhandene (mir immer inhaltlich komplett bekannte) Zeile ersatzlos herauszulöschen.

Gegeben sei die Datei:

datei.txt

mit dem Inhalt:

Dies ist Zeile eins.
Und dies ist Zeile zwei.
Ja das ist Zeile drei.

Jetzt möchte ich die (irgendwo in der Datei stehende) Zeile mit dem Inhalt "Und dies ist Zeile zwei." löschen.

Folgendes habe ich durch die Suche gefunden und probiert:

1.
find /v /i "Und dies ist Zeile zwei." datei.txt >datei.txt

bringt folgendes Ergebnis:

T1.txt

steht nun in der Datei, alle andere was drin stand ist weg.

2.
type Datei.txt | find "Und dies ist Zeile zwei." >Datei.txt

Nun ist die Datei komplett leer face-sad


Wo ist mein Denkfehler?

Content-ID: 54777

Url: https://administrator.de/forum/zeile-aus-batchdatei-loeschen-54777.html

Ausgedruckt am: 23.12.2024 um 05:12 Uhr

45426
45426 22.03.2007 um 12:41:37 Uhr
Goto Top
> Wo ist mein Denkfehler?
du überschreibst mit ">datei.txt" die Quelldatei. face-wink
36539
36539 22.03.2007 um 13:05:24 Uhr
Goto Top
.... datei.txt > datei.txt

dreh das ">" um zu "< datei.txt"

onegasee59
bufferm44
bufferm44 22.03.2007 um 15:58:42 Uhr
Goto Top
Moin!
Danke erstmal für die Hilfe. Leider funktioniert es immer noch nicht, es sieht so aus als ob der verbleibende Inhalt zwar angezeigt wird, jedoch nicht in das file zurückgeschrieben wird.

Bei Ausführung der Batch sehe ich folgendes:

c:\>find /v /i "Zeile2" c:\datei.txt 0<c:\datei.txt

c:\DATEI.TXT
Zeile1
Zeile3

c:\>pause
Drücken Sie eine beliebige Taste...
Biber
Biber 22.03.2007 um 16:26:07 Uhr
Goto Top
Moin bufferm44,

dann eben so:
type c:\datei.txt|find /v /i "Zeile2" >temp.txt && move /y temp.txt c:\datei1.txt  

Gruss
Biber
45426
45426 22.03.2007 um 17:32:25 Uhr
Goto Top
Und warum nimmst du statt Temp nicht gleich Datei1 oder verschiebst Temp auf Datei? face-big-smile face-big-smile
Biber
Biber 22.03.2007 um 17:37:38 Uhr
Goto Top
Und warum nimmst du statt Temp nicht gleich Datei1 oder verschiebst Temp auf Datei?
Och, ich dachte, wenn ich schon einen Oneliner schreibe, dann kann ich doch auch die ganze Bildschirmbreite ausnutzen...

Sind doch alles recyclebare Elektronen, mit denen ich meine Bätche speichere, da brauch ich nicht so kleinlich sein....

Grüsse
Biber
45426
45426 22.03.2007 um 17:58:15 Uhr
Goto Top
@bufferm44

Danke erstmal für die Hilfe. Leider funktioniert es immer noch nicht, es sieht so
aus als ob der verbleibende Inhalt zwar angezeigt wird, jedoch nicht in das file
zurückgeschrieben wird.

Kann ja auch nicht. Wenn der Tippgeber seinen Tipp wenigstens mal ausprobiert hätte ......
36539
36539 22.03.2007 um 20:20:14 Uhr
Goto Top
@45426
Ja Sorry, ich hatte mich nur blind auf die Bildschirmausgabe verlassen und dachte das ihm
ein:
---------- DATEI.TXT
Zeile1
Zeile3
reicht, habe aber nicht den wirklichen Inhalt der datei.txt geprüft.

@bufferm44
Entschuldigung

onegasse59
bufferm44
bufferm44 24.03.2007 um 17:43:12 Uhr
Goto Top
Moin!
Macht nix ;)

Die Zeile vom Biber hat super funktioniert, vielen Dank!
Das eine "&" habe ich rausgenommen.

Grüße

Tobias