actionbrowser.com
Okay, folgendes Ziel: Wir wollen mit einem Batch Script aus einer Textdatei eine Textzeile löschen oder filtern (alles andere löschen). Praktisches Beispiel: Das im letzten Post beschriebene Thunderbird Problem soll auf allen Computern eines Netzwerks behoben werden. Die Zeile muss also aus der Einstellungsdatei jedes Nutzers gelöscht werden. Also ein Anmeldescript. Der Vorgang besteht aus 2 Schritten: 1. Die gewünschte Zeile finden. 2. Diese Zeile oder alle anderen Zeilen löschen. Text finden: findstr /b /v /i /c:user_pref(\"int_printer\" c:\pfad\zur\ Damit wird die komplette Zeile mit dem Anfang user_pref("int_printer" gefunden. Text in datei suchen ersetzen per batch 2016. Zeile löschen (mit Loggingfunktion): @echo off title Reset Thunderbird Default Printer set logdir=\\server\pfad\ cd /d "%appdata%\Thunderbird\Profiles\" cd *. default if exist del if errorlevel 1 goto fehler ping 127. 0. 1 >> nul ren findstr /b /v /i /c:user_pref(\"int_printer\" > echo%date%%time%%computername% - Reset erfolgreich >>%logdir%\ goto end:fehler echo%date%%time%%computername% - Reset fehlerhaft >>%logdir%\:end Zeile löschen (pure): @echo off Und falls man einen Überblick über alle verwendeten Thunderbird drucken haben möchte: Zeile filtern: @echo off findstr /b /l /i /c:user_pref(\"int_printer\" >> \\server\pfad\ Die Funktionalität des filterns beschränkt sich tatsäch nur darauf, diese 1 Zeile aller Benutzer, auf die das Anmeldescript angewendet wird, zusammenzutragen.
Wie ersetzt man eine Zeichenkette in der zweiten Zeile einer Textdatei mit einer Batch-Datei? (1) Ok, ich arbeite schon an einer ziemlich komplexen Batch-Datei, die den Benutzer bittet, eine Textdatei zu erstellen, die 6 (oder mehr) Textzeilen enthält. Dann nimmt es diese Datei und ändert jede Instanz jedes Buchstabens zu seiner entsprechenden Nummer (wenn beispielsweise die erste Zeile der Textdatei "programmierbar" heißt, dann würde das Programm alle Instanzen des Buchstabens "a" in 1 und "b" ändern. in 2 und so weiter, bis es alle Zahlen waren. Text in datei suchen ersetzen per bath blog. Es würde dann lesen "16 18 15 7 18 1 13 1 2 12 5") und ich würde das tun, indem Sie das folgende Skript verwenden: set /p var=< set var=%var:a=1% echo. %var% >> Das einzige Problem mit diesem Skript ist jedoch, dass es nur den Buchstaben a in der ersten Zeile auf 1 ändert, nicht den Buchstaben "a" im Rest des Dokuments.
Wenn es helfen würde, wenn ich all das in Kontext setze, hier ist das Skript für mein Programm, für den ": LOADING" tiefgestellt benutze ich momentan die Methode, die ich zuvor erklärt habe, wo ich die Zeilen in Dateien aufteile. Code: (Speichern unter "") @echo off title BETA cls echo.
Text via VBA in Textdatei (txt) suchen und ersetzen Autor Nachricht fuxl66 Im Profil kannst Du frei den Rang ndern Verfasst am: 11. Sep 2012, 10:00 Rufname: Version: Office 2010 Hallo erstmal. Sehr umfangreiches Forum hier an dem ich mich gerne beteiligen wrde. Zuerst einmal bruchte ich jedoch eure Hilfe. Ich habe hier ein File "" In diesem File wrde ich gerne automatisiert via VBA einen Textbaustein ersetzen und als "" abspeichern. Im File sollen alle Eintrge "Blau" durch "Rot" ersetzt werden! Knnt ihr mir damit helfen? Danke bst Programmierer Verfasst am: 11. Sep 2012, 10:18 Rufname: Bernd Wohnort: Ilsfeld Hi, warum willst Du das in VBA machen? Dafr gibt es denn M. E. geeignetere Wege z. B. direkt auf der Kommandozeile mit SED (das gibt es auch fr Windows). Einfach: Zitat: c:\> sed < -e "s/Blau/Rot/" > und fertig. Text in datei suchen ersetzen per batch 7. cu, Bernd -- (Unix) Verfasst am: 11. Sep 2012, 10:29 Rufname: Dies wre natrlich auch meine bevorzugte Variante, jedoch bekomm ich es mit ner Batch Datei nicht hin.
Diese Befehle hier funktionieren unter Windows CE leider nicht. set jahr=%date:~-4% set monat=%date:~-7, 2% set tag=%date:~-10, 2% Kann mir da bitte jemand erklären, wie man das bei Windows CE macht?
Eierlein Gast Verfasst am: 11. Sep 2012, 14:54 Rufname: Und hier eine vbs Version: Code: ' Option explicit Dim fso, f, text Const ForInput = 1, ForOutput = 2 Set fso = CreateObject("leSystemObject") Set f = TextFile("d:\##\", ForInput) Text = adAll text = Replace(text, "Blau", "Rot") Set f = TextFile("d:\##\", ForOutput, True) (text) Verfasst am: 11. Sep 2012, 15:11 Rufname: Eierlein - 11. Sep 2012, 14:54 hat folgendes geschrieben: Und hier eine vbs Version: Perfekt. Genau so funktioniert das wie ich mir das vorgestellt habe. DANKE. Verfasst am: 11. Sep 2012, 15:18 Rufname: Und das ohne Regex- Verfasst am: 11. Stringoperationen in der DOS Batch – Ersetzen und Ausschneiden | SyMaBlog. Sep 2012, 15:25 Rufname: Hansueli Zitat: Und das ohne Regex-... Booaahh. Regex wurde in meinem Vorschlag eingesetzt, da es einfachere Anpassungen an Gross/Kleinschreibung oder Like Operatoren mglich macht. Replace ist stur und Case-Sensitiv! Aber wichtig ist ja, das des Anfragers Problem gelst ist. Der Kluge lernt, der Dummkopf erteilt gern Belehrungen. - Anton Tschechow