Supportnet / Forum / BS-Sonstige
Zeichenkette ersetzten, wie?
Frage
Hallo,
also ich hab da ein kleines grosses prob. und hoffe es kann mir jemand helfen.
Ich möche in einer BATCH oder TXT datei eine änderung durchführen, per script.
Also nehmen wir mal an ich habe eine TXT datei und da steht drin.
* Wünsche allen ein schönes Wochenende. *
nun mochte ich aber das "allen" auswechseln gegen "Dir"
Bennen wir mal eine Datei Wort.bat, also wenn ich da rein schreibe.
TYPE TEST.TXT | FIND /i "%1" | SETWORD 2 %1.BAT
CALL %1.BAT Wort
Diese dann so aufrufe
wort.bat allen
sucht er das wort "allen", und setzt es mir in die umgebungsvariable.
also ich mein wenn ich nun set eingebe habe ich ja
WORT=allen
aber das nützt mir ja nicht`s denn ich möchte ja in der TEST.TXT das wort "allen" ersetzten gegen "Dir", ok nun könnte ich ein script schreiben der mir 100 wöter nach links sucht und nach unten. Aber das währe wohl zu aufwendig.
diese als umgebungsvariable abzulegen und diese dann wieder in eine TXT zu legen.
Vielleicht hat ja jemand eine Idee oder ein Ext. Befehl der das macht, sollte nur für dos 5, 6, 7 (Windows9x) und NT sein.
Vielen Dank im vorraus und für jeden tipp währe ihc dankbar.
gruss
Markus
Antwort 1 von schlafmuetze
hi,
willst du nur 1 datei bearbeiten ?
dann mach es im editor mit suchen/ersetzen.
gruß
willst du nur 1 datei bearbeiten ?
dann mach es im editor mit suchen/ersetzen.
gruß
Antwort 2 von MichaelSchmidt
Kannst Du programmieren?
Dann nimm dir qbasic und schreib ein kleines Programm dafür!
Ciao
Michael
Dann nimm dir qbasic und schreib ein kleines Programm dafür!
Ciao
Michael
Antwort 3 von @lti
Probier doch, diesen Teil "Wünsche..." über eine Batchdatei mit Platzhalter mit dem Text zu verbinden.
Also in etwa
Wünsche %1 ein schönes Wochenende
Ausgabe meinetwegen in gruss.txt
Zusammenkopieren
copy text.txt+gruss.txt gesamt.txt
Aufruf der Batchdatei mit Schalter "Dir" oder "allen"
Funktioniert natürlich nur in diesem speziellen Fall. Andernfalls würde ich, wie schon vorgeschlagen, auf QBasic zurückgreifen und mir Textbausteine erstellen.
Gruss Andreas
Also in etwa
Wünsche %1 ein schönes Wochenende
Ausgabe meinetwegen in gruss.txt
Zusammenkopieren
copy text.txt+gruss.txt gesamt.txt
Aufruf der Batchdatei mit Schalter "Dir" oder "allen"
Funktioniert natürlich nur in diesem speziellen Fall. Andernfalls würde ich, wie schon vorgeschlagen, auf QBasic zurückgreifen und mir Textbausteine erstellen.
Gruss Andreas
Antwort 4 von Markusr_
@schlafmuetze
Also es geht schon um eine Datei wo ein Phath drin steht der ist aber unterschiedlich, daher muss dieser geändert werden.
Wenn es so einfach währe dann würde ich es ja so machen wie´
@Andreas
es sagte aber es ist leider nicht so :-(
Bei REXX geht es aber ich brauche leider unter DOS, und das ist nun mal das prob.
Es geht darum daws eine Routine automatisch durchläuft ohne das ein Anwender in den Scripten spielt.
@Michael
Also das ist schon ein guter tip, aber meine Basic kenntnisse liegen schon 15 Jahre Heer :-(.
Soviel ich noch weiss gibt es ja so eine INPUT rutine, oder?
gruss
Markus
Also es geht schon um eine Datei wo ein Phath drin steht der ist aber unterschiedlich, daher muss dieser geändert werden.
Wenn es so einfach währe dann würde ich es ja so machen wie´
@Andreas
es sagte aber es ist leider nicht so :-(
Bei REXX geht es aber ich brauche leider unter DOS, und das ist nun mal das prob.
Es geht darum daws eine Routine automatisch durchläuft ohne das ein Anwender in den Scripten spielt.
@Michael
Also das ist schon ein guter tip, aber meine Basic kenntnisse liegen schon 15 Jahre Heer :-(.
Soviel ich noch weiss gibt es ja so eine INPUT rutine, oder?
gruss
Markus
Antwort 5 von _gau_
Hi Markus,
ich hätte da zwei Sachen für dich. Einmal "Dostools.zip" (enthält xchng.com zum einfachen Ersetzen von Zeichenfolgen, keine Platzhalter z.B. *.txt möglich) und GSAR (mehr Optionen, Platzhalter erlaubt).
Wenn du willst, schick ich sie dir (ZIP, 20 und 45KB).
Freeware
Steffen
ich hätte da zwei Sachen für dich. Einmal "Dostools.zip" (enthält xchng.com zum einfachen Ersetzen von Zeichenfolgen, keine Platzhalter z.B. *.txt möglich) und GSAR (mehr Optionen, Platzhalter erlaubt).
Wenn du willst, schick ich sie dir (ZIP, 20 und 45KB).
Freeware
Steffen
Antwort 6 von Markusr_
Also ich hab es jetzt endlich, es gibt ein Ext. Befehl der nennt sich snr.exe und snr32.exe und ist von einem gewissen Alexander Kresin
wenn ich nun in einer Datei z.B. in einer TXT oder BAT datei suche dann wird dieser ersetzt.
snr -r C:\TEST.TXT allen Dir
So wird nach einer wortkette gesucht die allen heist und diese wird dann ersetzt in Dir.
Danke trotzdem alle die es versucht haben mir zu helfen.
gruss
Markus
PS: Wenn jemand dieses Tool braucht dann Mailt mir einfach. Oder KOmmt in den MSN-Messenger
wenn ich nun in einer Datei z.B. in einer TXT oder BAT datei suche dann wird dieser ersetzt.
snr -r C:\TEST.TXT allen Dir
So wird nach einer wortkette gesucht die allen heist und diese wird dann ersetzt in Dir.
Danke trotzdem alle die es versucht haben mir zu helfen.
gruss
Markus
PS: Wenn jemand dieses Tool braucht dann Mailt mir einfach. Oder KOmmt in den MSN-Messenger
Antwort 7 von _gau_
Uuups, das ist Timing ;-)
Steffen
Steffen
Antwort 8 von Markusr_
Hallo Steffen,
ja schick mal rüber mal sehen was da noch so drin ist.
Man muss ja immer mal schaun was es sonst so gibt, oder :-)
Wir hatten schon mal das vergnügen, wg. der NTFS Sicherheit.
gruss
Markus
ja schick mal rüber mal sehen was da noch so drin ist.
Man muss ja immer mal schaun was es sonst so gibt, oder :-)
Wir hatten schon mal das vergnügen, wg. der NTFS Sicherheit.
gruss
Markus
Antwort 9 von _gau_
o.k.
Steffen
Steffen

