title image


Smiley Re: Suche kommandozeilentool ... gerade geändert! Nochmal gucken ...
Mal angenommen, du ackerst die Datei mit einem passenden "for" Befehl durch. Dabei packst Du jede Zeile als Token vollständig (*) in die Variable %M.



Dann kannst Du die mit "set M=%M:String1=String2%" transformieren. Das geht auch mehrfach hintereinander. Evtl. musst Du dabei aber statt dem % das ! verwenden.



Anschließend in eine "Tempdatei" schreiben.



Zum Schluß Originaldatei in irgendwas, dann "Tempdatei" in Original umbenennen, und dann das "irgendwas" löschen.



So sieht's dann als Batchdatei aus:

@echo off

for /F (tokens=*) %%M in (Datei.txt) do (

set M=%M:String1=StringA%

set M=%M:String2=StringB%

echo %M>>Tempdatei

)

ren Datei.txt Datei.old /y

ren Tempdatei Datei.txt

del Datei.old /yDas sollte so in etwa klappen. Wie gesagt, die Variablen u.U. werden verzögert bearbeitet wodurch das Ergebnis daneben gehen kann, dann mal innerhalb der "For" Schleife statt Prozent Ausrufezeichen nehmen.



[edit: oben steht Blödsinn, hier ist's richtig:]

@echo off

set A=Leer

for /F "tokens=* " %%M in (Datei.txt) do (

set A=%%M

set A=!A:String1=StringA!

set A=!A:String2=StringB!

echo !A! >>Tempdatei

)

ren Datei.txt Datei.old

ren Tempdatei Datei.txt

del Datei.old /Q



Das klappt.











Die letzte Stimme, die man hört, bevor die Welt explodiert,
wird die Stimme eines Experten sein, der sagt:
'Das ist doch technisch gar nicht möglich!'


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: