Ersetzen Sie mehrere Wörter in mehreren Dateien

1286
AllSolutions

Ich verwende Windows 7. Ich muss mehrere Vorkommen mehrerer Wörter in mehreren Textdateien ersetzen.

Angenommen, es gibt 20 Dateien. Ich habe eine Liste von Wörtern, die ich finden muss, und die Wörter, um sie durch zu ersetzen. Angenommen, Die Suchliste enthält Wörter wie "12345678", "ABCDEFGH" usw. Die Ersetzungsliste enthält Wörter wie "76892", "A563" usw.

In jeder Datei muss ich jedes Wort in meiner Suchliste durch das Wort in der Ersetzungsliste ersetzen. Wie Sie sehen, gibt es kein direktes Muster in der Suchliste und der Ersetzungsliste.

Gibt es eine Möglichkeit, es nicht manuell nacheinander manuell zu erledigen, sondern es mit einem Hilfsprogramm (sollte kostenlos sein)? Ich kann das programmgesteuert machen, aber ich suche nach einer Antwort, ohne Code schreiben zu müssen. Wenn sich zwischen der Suchliste und der Ersetzungsliste ein Muster befindet, hätte ich reguläre Ausdrücke verwenden können, aber es gibt kein Muster.

Ein Beispiel wird hilfreich sein. Selbst mit der Funktion "In Dateien suchen" von TextPad glaube ich nicht, dass dies möglich ist, da es kein Muster gibt. Ich habe in diesem Forum mehrere Threads gesucht, aber viele Antworten beziehen sich entweder auf das Schreiben eines Makros oder eines PowerShell-Dienstprogramms oder auf die Verwendung regulärer Ausdrücke usw. Ich hoffe, dies wird von den Moderatoren nicht als Duplikat markiert.

0
"Ich kann das programmgesteuert machen, aber ich suche nach einer Antwort, ohne Code schreiben zu müssen." - Kann ich fragen, warum Sie nach dieser Art von Lösung suchen? Dave vor 7 Jahren 1
Es ist einfacher, ein bereits verfügbares Dienstprogramm zu verwenden, als Code zu schreiben. Zum zweiten Gedanken bin ich offen für die Verwendung von PowerShell, aber ich weiß es nicht, und die Lernkurve wird Zeit brauchen. Wenn jemand einfach das genaue PowerShell-Skript posten kann, das die Aufgabe erfüllt, kann ich es verwenden. AllSolutions vor 7 Jahren 0
Kann PowerShell alle Dateien im Verzeichnis überarbeiten (es gibt keine Unterverzeichnisse)? Kann es Eingaben für die Suchliste und die Ersetzungsliste machen, die in einer externen Datei (Textdatei oder Excel-Datei) gespeichert sind? Es sind keine regulären Ausdrücke erforderlich, wenn die Such- und Ersetzungsliste von einer externen Quelle gelesen werden kann. AllSolutions vor 7 Jahren 0
Die einfachste Methode, die ich finden konnte, ist Notepad ++: Dort können Sie den Inhalt einer Liste durch [Python-Skript-Plug-In] ersetzen (http://stackoverflow.com/questions/11389466/multiple-word-search-and-replace-in- notepad / 16104946 # 16104946) und auch [in Dateien suchen und ersetzen] (http://docs.notepad-plus-plus.org/index.php/Searching_And_Replacing) Máté Juhász vor 7 Jahren 1
Ah, aber ich kenne Python nicht. Zweitens ist es möglicherweise nicht möglich, alle Suchwörter zu bestimmen und die Wörter inline im regulären Ausdruck zu ersetzen (wie in dem von Ihnen geposteten Link gezeigt), da die Liste BIG ist. AllSolutions vor 7 Jahren 0
Das in diesem Link veröffentlichte Python-Skript ist ziemlich einfach. Ich kann es auch verwenden, ohne viel von der Python-Syntax zu verstehen. Aber wie führe ich dieses Skript von NotePad ++ aus und wie führe ich es über mehrere Dateien aus? AllSolutions vor 7 Jahren 0
@ AllSolutions, Sie sagten, Sie können es programmgesteuert machen und sagen jetzt, Sie könnten nicht?!? Dave vor 7 Jahren 0
@Dave, ich kann es programmgesteuert mit C # machen. Ich kenne nicht alle Sprachen :) AllSolutions vor 7 Jahren 0
@Mate Juhasz, ich habe NotePad ++ und das Python Script Plugin installiert. Wie wähle ich das Skript im Fenster "In Dateien suchen" aus, oder wie führe ich das Skript für mehrere Dateien in einem Ordner aus? Das Skript scheint nur für die aktive Datei auszuführen. AllSolutions vor 7 Jahren 0
Nur weil ich etwas Zeit hatte und Spaß am Schreiben von Code hatte, würde ein PS-Skript für diesen Fall aussehen: `get-childitem" C: \ yourpath "-filter * .txt | % {(Get-Content $ ($ _. FullName)) -replace "12345678", "A563" | Set-Inhalt} ` SimonS vor 7 Jahren 0
Ich werde es versuchen, aber können Sie vorschlagen, welche Änderungen in Ihrem Code vorgenommen werden müssen, um die Such- und Ersetzungstexte aus einer externen Datei zu lesen? Wie gesagt, ich kenne Python nicht. AllSolutions vor 7 Jahren 0

0 Antworten auf die Frage