CMD: Bestimmte Zeile in txt ersetzen, geht das auch nur mit Zeilennummer?
Ich würde gerne in einer txt Datei Beispielsweise die 5. Zeile ersetzen. Also etwa so:
echo neuertext>zeile5 beispiel.txt
Was vorher in der Zeile drinstand ist egal das weiß ich auch nicht, aber es soll jedenfalls in genau dieser Zeile etwas neues Stehen.
Beispiel: in der datei stehen:
1. Torte 2. Sauce 3. Fußball 4. Ferien
und er soll die 3. zeile in Router ersetzen:
1. Torte 2. Sauce 3. Router 4. Ferien
Habt ihr da ne Idee? Würde mich freuen sitze schon länger an einem Script aber habe jetzt langsam den Kopf voll ;)
Gruß Lukas
PS: die 1. 2. 3. und 4. sollen jeweils die 4 versch. Zeilen angeben :D also Zeile 1. Zeile 2. usw :D
1 Antwort
Vom Fragesteller als hilfreich ausgezeichnet
z. B.
setlocal enabledelayedexpansion
set zeileNrAustausch=3
set zeileNeu=3. Router
if exist beispiel.tmp del beispiel.tmp
set zeileNr=0
for /f "delims=" %%A in (beispiel.txt) do (
( set /a zeileNr+=1 >NUL)
(if !zeileNr!==%zeileNrAustausch% (echo %zeileNeu%>>beispiel.tmp) else (echo %%A>>beispiel.tmp))
)
if exist beispiel.bak del beispiel.bak
ren beispiel.txt beispiel.bak
ren beispiel.tmp beispiel.txt