Ich habe eine Datei mit ~ 10.000 Zeilen, die 2 Spalten zu ersetzen:Schneller Weg String-Paare in der Datei
org_string1 \t replacement_string1
org_string2 \t replacement_string2
Was ist der beste Weg (Geschwindigkeit/Bequemlichkeit) zu ersetzen all diese org_string mit ihrem entsprechenden replacement_string in eine andere Textdatei (10k Ersatz in einer zweiten Datei)?
Ich plane, sie in eine sed-Substitution-Befehl konvertieren, aber nicht sicher über die Geschwindigkeit Leistung und ob es die maximale Befehlszeilengrenze in Linux überschreiten wird.
Annahme:
- Alle org_string und replacement_string einzigartig sind.
- Der org_string ist ein einzelnes Wort (umgeben von Leerzeichen) in der Eingabedatei.
Also wollen Sie 10k verschiedene Ersetzungen in einer zweiten Datei machen? Aus meiner Erfahrung wird 'sed' sehr langsam, auch wenn Sie ihm eine Datei mit 10k's/org_string1/ersatz_string1 /' Zeilen geben. Ich habe Perl oder Python nicht mit einem 10k Dictionary für reguläre Ausdrücke und Substitutionen getestet. –
ich denke, es wird kein Problem sein, in Perl zu konvertieren/zu ersetzen, da Perl dies in Millisekunden tun wird. – ssr1012
Der einzelne Ersatz wird schnell sein. Aber die Überprüfung jeder Zeile gegen 10k-Muster wird zusammengefasst. –