Sed-Script ist zu langsam. Perl bzw. AWK als alternative?
Hallo an alle Mitglieder!
Ich folgende Frage. Ich habe ein SED-Script, die alle falsch kodierte UTF-8-Symbole durch normale Symbole ersetzt.
Es funktioniert wie folgt:
sed -f Replace.sed Muster.txt > Muster1.txt
Replace.sed sieht wie folgt aus (als Beispiel. Originale Datei beinhaltet fast 70.000 Zeilen):
Nun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss. Die Lösung den Script auf mehrere kleinere Scripts zu verteilen ist nicht zielführend.
Kann man so einen Script mit AWK oder Perl umschreiben, damit es schneller geht? Leider habe ich da nicht so viel Ahnung.
Danke!
Ich folgende Frage. Ich habe ein SED-Script, die alle falsch kodierte UTF-8-Symbole durch normale Symbole ersetzt.
Es funktioniert wie folgt:
sed -f Replace.sed Muster.txt > Muster1.txt
Replace.sed sieht wie folgt aus (als Beispiel. Originale Datei beinhaltet fast 70.000 Zeilen):
s// /g
s/ß½/߽/g
s/ß¼//g
s/ß»//g
s/ߺ/ߺ/g
s/ß¹/߹/g
s/߸/߸/g
s/ß·/߷/g
s/ß¶/߶/g
s/ßµ/ߵ/g
s/ß´/ߴ/g
s/ß³/߳/g
s/ß²/߲/g
s/ß±/߱/g
s/ß°/߰/g
s/߯/߯/g
s/ß®/߮/g
s/ß/߭/g
s/߬/߬/g
s/ß«/߫/g
s/ߪ/ߪ/g
s/ß©/ߩ/g
s/ߨ/ߨ/g
s/ß§/ߧ/g
s/ߦ/ߦ/g
s/ߥ/ߥ/g
s/ߤ/ߤ/g
s/ߣ/ߣ/g
s/ߢ/ߢ/g
s/ß¡/ߡ/g
s/ß /ߠ/g
s/ß/ߟ/g
s/ß/ߞ/g
s/ß/ߝ/g
s/ß/ߜ/g
s/ß/ߛ/g
s/ß/ߚ/g
s/ß/ߙ/g
s/ß/ߘ/g
s/ß/ߗ/g
s/ß/ߖ/g
s/ß/ߕ/g
s/ß/ߔ/g
s/ß/ߓ/g
s/ß/ߒ/g
s/ß/ߑ/g
s/ß/ߐ/g
s/ß/ߏ/g
s/ß/ߎ/g
s/ß/ߍ/g
s/ß/ߌ/g
s/ß/ߋ/g
s/ß/ߊ/g
s/ß/߉/g
s/ß/߈/g
s/ß/߇/g
s/ß/߆/g
s/ß
/߅/g
s/ß/߄/g
s/ß/߃/g
s/ß/߂/g
s/ß/߁/g
s/ß/߀/g
s/Þ¿//g
s/Þ¾//g
s/Þ½//g
s/Þ¼//g
s/Þ»//g
s/Þº//g
s/Þ¹//g
s/Þ¸//g
s/Þ·//g
s/Þ¶//g
s/Þµ//g
s/Þ´//g
s/Þ³//g
s/Þ²//g
s/Þ±/ޱ/g
s/Þ°/ް/g
s/Þ¯/ޯ/g
s/Þ®/ޮ/g
s/Þ/ޭ/g
s/Þ¬/ެ/g
s/Þ«/ޫ/g
s/Þª/ު/g
s/Þ©/ީ/g
s/Þ¨/ި/g
s/Þ§/ާ/g
s/Þ¦/ަ/g
s/Þ¥/ޥ/g
s/Þ¤/ޤ/g
s/Þ£/ޣ/g
s/Þ¢/ޢ/g
s/Þ¡/ޡ/g
s/Þ /ޠ/g
s/Þ/ޟ/g
s/Þ/ޞ/g
s/Þ/ޝ/g
s/Þ/ޜ/g
s/Þ/ޛ/g
s/Þ/ޚ/g
s/Þ/ޙ/g
s/Þ/ޘ/g
s/Þ/ޗ/g
s/Þ/ޖ/g
s/Þ/ޕ/g
s/Þ/ޔ/g
s/Þ/ޓ/g
s/Þ/ޒ/g
s/Þ/ޑ/g
s/Þ/ސ/g
s/Þ/ޏ/g
s/Þ/ގ/g
s/Þ/ލ/g
s/Þ/ތ/g
s/Þ/ދ/g
s/Þ/ފ/g
s/Þ/މ/g
s/Þ/ވ/g
s/Þ/އ/g
s/Þ/ކ/g
s/Þ
/ޅ/g
s/Þ/ބ/g
s/Þ/ރ/g
s/Þ/ނ/g
s/Þ/ށ/g
s/Þ/ހ/g
s/Ý¿/ݿ/g
s/ݾ/ݾ/g
s/ݽ/ݽ/g
s/ݼ/ݼ/g
s/Ý»/ݻ/g
s/ݺ/ݺ/g
s/ݹ/ݹ/g
s/ݸ/ݸ/g
s/Ý·/ݷ/g
s/ݶ/ݶ/g
s/ݵ/ݵ/g
s/Ý´/ݴ/g
s/ݳ/ݳ/g
s/ݲ/ݲ/g
s/ݱ/ݱ/g
s/ݰ/ݰ/g
s/ݯ/ݯ/g
s/Ý®/ݮ/g
s/Ý/ݭ/g
s/ݬ/ݬ/g
s/Ý«/ݫ/g
s/ݪ/ݪ/g
s/Ý©/ݩ/g
s/ݨ/ݨ/g
s/ݧ/ݧ/g
s/ݦ/ݦ/g
s/Ý¥/ݥ/g
s/ݤ/ݤ/g
s/Ý£/ݣ/g
s/Ý¢/ݢ/g
s/Ý¡/ݡ/g
s/Ý /ݠ/g
s/Ý/ݟ/g
s/Ý/ݞ/g
s/Ý/ݝ/g
s/Ý/ݜ/g
s/Ý/ݛ/g
s/Ý/ݚ/g
s/Ý/ݙ/g
s/Ý/ݘ/g
s/Ý/ݗ/g
s/Ý/ݖ/g
s/Ý/ݕ/g
s/Ý/ݔ/g
s/Ý/ݓ/g
s/Ý/ݒ/g
s/Ý/ݑ/g
s/Ý/ݐ/g
s/Ý/ݏ/g
s/Ý/ݎ/g
s/Ý/ݍ/g
s/Ý//g
s/Ý//g
s/Ý/݊/g
s/Ý/݉/g
s/Ý/݈/g
s/Ý/݇/g
s/Ý/݆/g
s/Ý
/݅/g
s/Ý/݄/g
s/Ý/݃/g
s/Ý/݂/g
s/Ý/݁/g
s/Ý/݀/g
s/Ü¿/ܿ/g
s/ܾ/ܾ/g
s/ܽ/ܽ/g
s/ܼ/ܼ/g
s/Ü»/ܻ/g
s/ܺ/ܺ/g
s/ܹ/ܹ/g
s/ܸ/ܸ/g
s/Ü·/ܷ/g
s/ܶ/ܶ/g
s/ܵ/ܵ/g
s/Ü´/ܴ/g
s/ܳ/ܳ/g
s/ܲ/ܲ/g
s/ܱ/ܱ/g
s/ܰ/ܰ/g
s/ܯ/ܯ/g
s/Ü®/ܮ/g
s/Ü/ܭ/g
s/ܬ/ܬ/g
s/Ü«/ܫ/g
s/ܪ/ܪ/g
s/Ü©/ܩ/g
s/ܨ/ܨ/g
s/ܧ/ܧ/g
s/ܦ/ܦ/g
s/Ü¥/ܥ/g
s/ܤ/ܤ/g
s/Ü£/ܣ/g
s/Ü¢/ܢ/g
s/Ü¡/ܡ/g
s/Ü /ܠ/g
s/Ü/ܟ/g
s/Ü/ܞ/g
s/Ü/ܝ/g
s/Ü/ܜ/g
s/Ü/ܛ/g
s/Ü/ܚ/g
s/Ü/ܙ/g
s/Ü/ܘ/g
s/Ü/ܗ/g
s/Ü/ܖ/g
s/Ü/ܕ/g
s/Ü/ܔ/g
s/Ü/ܓ/g
s/Ü/ܒ/g
s/Ü/ܑ/g
s/Ü/ܐ/g
s/Ü//g
s/Ü//g
s/Ü/܍/g
s/Ü/܌/g
s/Ü/܋/g
s/Ü/܊/g
s/Ü/܉/g
s/Ü/܈/g
s/Ü/܇/g
s/Ü/܆/g
s/Ü
/܅/g
s/Ü/܄/g
s/Ü/܃/g
s/Ü/܂/g
s/Ü/܁/g
s/Ü/܀/g
s/Û/ۭ/g
s/Û¬/۬/g
s/Û«/۫/g
s/Ûª/۪/g
s/Û©/۩/g
s/Û¨/ۨ/g
s/Û§/ۧ/g
s/Û¦/ۦ/g
s/Û¥/ۥ/g
s/Û¤/ۤ/g
s/Û£/ۣ/g
s/Û¢/ۢ/g
s/Û¡/ۡ/g
s/Û /۠/g
s/Û/۟/g
s/Û/۞/g
s/Û//g
s/Û/ۜ/g
s/Û/ۛ/g
s/Û/ۚ/g
s/Û/ۙ/g
s/Û/ۘ/g
s/Û/ۗ/g
s/Û/ۖ/g
s/Ù´/ٴ/g
s/Ù°/ٰ/g
s/Ùª/٪/g
s/Ù/ٟ/g
s/Ù/ٞ/g
s/Ù/ٝ/g
s/Ù/ٜ/g
s/Ù/ٛ/g
s/Ù/ٚ/g
s/Ù/ٙ/g
s/Ù/٘/g
s/Ù/ٗ/g
s/Ù/ٖ/g
s/Ù/ٕ/g
s/Ù/ٔ/g
s/Ù/ٓ/g
s/Ù/ْ/g
s/Ù/ّ/g
s/Ù/ِ/g
s/Ù/ُ/g
s/Ù/َ/g
s/Ù/ٍ/g
s/Ù/ٌ/g
s/Ù/ً/g
s/Ø/؝/g
s/Ø//g
s/Ø/؛/g
s/Ø/ؚ/g
s/Ø/ؙ/g
s/Ø/ؘ/g
s/Ø/ؗ/g
s/Ø/ؖ/g
s/Ø/ؕ/g
s/Ø/ؔ/g
s/Ø/ؓ/g
s/Ø/ؒ/g
s/Ø/ؑ/g
s/Ø/ؐ/g
s/Ø/؏/g
s/Ø/؎/g
s/Ø/،/g
s/Ø/؊/g
s/Ø/؉/g
s/Ø/؇/g
s/Ø/؆/g
s/Ø
//g
s/׿//g
s/×¾//g
s/×½//g
s/×¼//g
s/×»//g
s/׺//g
s/×¹//g
s/׸//g
s/×·//g
s/×¶//g
s/×µ//g
s/ׯ/ׯ/g
s/×®//g
s/×//g
s/׬//g
s/׫//g
s/×//g
s/×//g
s/×//g
s/×//g
s/×//g
s/×//g
s/×//g
s/×//g
s/Ö//g
s/Ö/֏/g
s/Ö/֎/g
s/Ö/֍/g
s/Ö//g
s/Ö//g
s/Ö//g
s/Ö//g
s/Ö/ֈ/g
s/Ö//g
s/Ö//g
s/Ö
//g
s/Ö//g
s/Ö//g
s/Ö//g
s/Ö//g
s/Ö//g
s/Õ /ՠ/g
s/Õ/՟/g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ/ՙ/g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ
//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Õ//g
s/Ô°//g
s/Ô¯/ԯ/g
s/Ô®/Ԯ/g
s/Ô/ԭ/g
s/Ô¬/Ԭ/g
s/Ô«/ԫ/g
s/Ôª/Ԫ/g
s/Ô©/ԩ/g
s/Ô¨/Ԩ/g
s/Ô§/ԧ/g
s/Ô¦/Ԧ/g
s/Ô¥/ԥ/g
s/Ô¤/Ԥ/g
s/Ô£/ԣ/g
s/Ô¢/Ԣ/g
s/Ô¡/ԡ/g
s/Ô /Ԡ/g
s/Ô/ԟ/g
s/Ô/Ԟ/g
s/Ô/ԝ/g
s/Ô/Ԝ/g
s/Ô/ԛ/g
s/Ô/Ԛ/g
s/Ô/ԙ/g
s/Ô/Ԙ/g
s/Ô/ԗ/g
s/Ô/Ԗ/g
s/Ô/ԕ/g
s/Ô/Ԕ/g
s/Ô/ԓ/g
s/Ô/Ԓ/g
s/Ô/ԑ/g
s/Ô/Ԑ/g
s/Ô/ԏ/g
s/Ô/Ԏ/g
s/Ô/ԍ/g
s/Ô/Ԍ/g
s/Ô/ԋ/g
s/Ô/Ԋ/g
s/Ô/ԉ/g
s/Ô/Ԉ/g
s/Ô/ԇ/g
s/Ô/Ԇ/g
s/Ô
/ԅ/g
s/Ô/Ԅ/g
s/Ô/ԃ/g
s/Ô/Ԃ/g
s/Ô/ԁ/g
s/Ô/Ԁ/g
s/Ó¿/ӿ/g
s/Ó¾/Ӿ/g
s/Ó½/ӽ/g
s/Ó¼/Ӽ/g
s/Ó»/ӻ/g
s/Óº/Ӻ/g
s/Ó¹/ӹ/g
s/Ó¸/Ӹ/g
s/Ó·/ӷ/g
s/Ó¶/Ӷ/g
s/Óµ/ӵ/g
s/Ó´/Ӵ/g
s/Ó³/ӳ/g
s/Ó²/Ӳ/g
s/Ó±/ӱ/g
s/Ó°/Ӱ/g
s/Ó¯/ӯ/g
s/Ó®//g
s/Ó/ӭ/g
s/Ó¬/Ӭ/g
s/Ó«/ӫ/g
s/Óª/Ӫ/g
s/Ó©//g
s/Ó¨//g
s/Ó§/ӧ/g
s/Ó¦/Ӧ/g
s/Ó¥/ӥ/g
s/Ó¤/Ӥ/g
s/Ó£//g
s/Ó¢//g
s/Ó¡/ӡ/g
s/Ó /Ӡ/g
s/Ó/ӟ/g
s/Ó/Ӟ/g
s/Ó/ӝ/g
s/Ó/Ӝ/g
s/Ó/ӛ/g
s/Ó/Ӛ/g
s/Ó//g
s/Ó//g
s/Ó/ӗ/g
s/Ó/Ӗ/g
s/Ó/ӕ/g
s/Ó/Ӕ/g
s/Ó/ӓ/g
s/Ó/Ӓ/g
s/Ó/ӑ/g
s/Ó/Ӑ/g
s/Ó/ӏ/g
s/Ó/ӎ/g
s/Ó/Ӎ/g
s/Ó/ӌ/g
s/Ó/Ӌ/g
s/Ó/ӊ/g
s/Ó/Ӊ/g
s/Ó/ӈ/g
s/Ó/Ӈ/g
s/Ó/ӆ/g
s/Ó
/Ӆ/g
s/Ó/ӄ/g
s/Ó/Ӄ/g
s/Ó/ӂ/g
s/Ó/Ӂ/g
s/Ó/Ӏ/g
s/Ò¿/ҿ/g
s/Ò¾/Ҿ/g
s/Ò½/ҽ/g
s/Ò¼/Ҽ/g
s/Ò»//g
s/Òº//g
s/Ò¹//g
s/Ò¸//g
s/Ò·//g
s/Ò¶//g
s/Òµ/ҵ/g
s/Ò´/Ҵ/g
s/Ò³//g
s/Ò²//g
s/Ò±//g
s/Ò°//g
s/Ò¯//g
s/Ò®//g
s/Ò/ҭ/g
s/Ò¬/Ҭ/g
s/Ò«/ҫ/g
s/Òª/Ҫ/g
s/Ò©/ҩ/g
s/Ò¨/Ҩ/g
s/Ò§/ҧ/g
s/Ò¦/Ҧ/g
s/Ò¥/ҥ/g
s/Ò¤/Ҥ/g
s/Ò£//g
s/Ò¢//g
s/Ò¡/ҡ/g
s/Ò /Ҡ/g
s/Ò/ҟ/g
s/Ò/Ҟ/g
s/Ò//g
s/Ò//g
s/Ò//g
s/Ò//g
s/Ò/ҙ/g
s/Ò/Ҙ/g
s/Ò//g
s/Ò//g
s/Ò/ҕ/g
s/Ò/Ҕ/g
s/Ò//g
s/Ò//g
s/Ò//g
s/Ò//g
s/Ò/ҏ/g
s/Ò/Ҏ/g
s/Ò/ҍ/g
s/Ò/Ҍ/g
s/Ò/ҋ/g
s/Ò/Ҋ/g
s/Ò/҉/g
s/Ò/҈/g
s/Ò/҇/g
s/Ò/҆/g
s/Ò
/҅/g
s/Ò/҄/g
s/Ò/҃/g
s/Ò/҂/g
s/Ò/ҁ/g
s/Ò/Ҁ/g
s/Ñ¿/ѿ/g
s/Ѿ/Ѿ/g
s/ѽ/ѽ/g
s/Ѽ/Ѽ/g
s/Ñ»/ѻ/g
s/Ѻ/Ѻ/g
s/ѹ/ѹ/g
s/Ѹ/Ѹ/g
s/Ñ·/ѷ/g
s/Ѷ/Ѷ/g
s/ѵ/ѵ/g
s/Ñ´/Ѵ/g
s/ѳ/ѳ/g
s/Ѳ/Ѳ/g
s/ѱ/ѱ/g
s/Ѱ/Ѱ/g
s/ѯ/ѯ/g
s/Ñ®/Ѯ/g
s/Ñ/ѭ/g
s/Ѭ/Ѭ/g
s/Ñ«/ѫ/g
s/Ѫ/Ѫ/g
s/Ñ©/ѩ/g
s/Ѩ/Ѩ/g
s/ѧ/ѧ/g
s/Ѧ/Ѧ/g
s/Ñ¥/ѥ/g
s/Ѥ/Ѥ/g
s/Ñ£/ѣ/g
s/Ñ¢/Ѣ/g
s/Ñ¡/ѡ/g
s/Ñ /Ѡ/g
s/Ñ/џ/g
s/Ñ/ў/g
s/Ñ/ѝ/g
s/Ñ/ќ/g
s/Ñ/ћ/g
s/Ñ/њ/g
s/Ñ/љ/g
s/Ñ/ј/g
s/Ñ/ї/g
s/Ñ/і/g
s/Ñ/ѕ/g
s/Ñ/є/g
s/Ñ/ѓ/g
s/Ñ/ђ/g
s/ͯ/ͯ/g
s/Í®/ͮ/g
s/Í/ͭ/g
s/ͬ/ͬ/g
s/Í«/ͫ/g
s/ͪ/ͪ/g
s/Í©/ͩ/g
s/ͨ/ͨ/g
s/ͧ/ͧ/g
s/ͦ/ͦ/g
s/Í¥/ͥ/g
s/ͤ/ͤ/g
s/Í£/ͣ/g
s/Í¢/͢/g
s/Í¡/͡/g
s/Í /͠/g
s/Í/͟/g
s/Í/͞/g
s/Í/͝/g
s/Í/͜/g
s/Í/͛/g
s/Í/͚/g
s/Í/͙/g
s/Í/͘/g
s/Í/͗/g
s/Í/͖/g
s/Í/͕/g
s/Í/͔/g
s/Í/͓/g
s/Í/͒/g
s/Í/͑/g
s/Í/͐/g
s/Í/͏/g
s/Í/͎/g
s/Í/͍/g
s/Í/͌/g
s/Í/͋/g
s/Í/͊/g
s/Í/͉/g
s/Í/͈/g
s/Í/͇/g
s/Í/͆/g
s/Í
/ͅ/g
s/Í/̈́/g
s/Í/̓/g
s/Í/͂/g
s/Í/́/g
s/Í/̀/g
s/Ì¿/̿/g
s/̾/̾/g
s/̽/̽/g
s/̼/̼/g
s/Ì»/̻/g
s/̺/̺/g
s/̹/̹/g
s/̸/̸/g
s/Ì·/̷/g
s/̶/̶/g
s/̵/̵/g
s/Ì´/̴/g
s/̳/̳/g
s/̲/̲/g
s/̱/̱/g
s/̰/̰/g
s/̯/̯/g
s/Ì®/̮/g
s/Ì/̭/g
s/̬/̬/g
s/Ì«/̫/g
s/̪/̪/g
s/Ì©/̩/g
s/̨/̨/g
s/̧/̧/g
s/̦/̦/g
s/Ì¥/̥/g
s/̤/̤/g
s/Ì£//g
s/Ì¢/̢/g
s/Ì¡/̡/g
s/Ì /̠/g
s/Ì/̟/g
s/Ì/̞/g
s/Ì/̝/g
s/Ì/̜/g
s/Ì/̛/g
s/Ì/̚/g
s/Ì/̙/g
s/Ì/̘/g
s/Ì/̗/g
s/Ì/̖/g
s/Ì/̕/g
s/Ì/̔/g
s/Ì/̓/g
s/Ì/̒/g
s/Ì/̑/g
s/Ì/̐/g
s/Ì/̏/g
s/Ì/̎/g
s/Ì/̍/g
s/Ì/̌/g
s/Ì/̋/g
s/Ì/̊/g
s/Ì//g
s/Ì/̈/g
s/Ì/̇/g
s/Ì/̆/g
s/Ì
/¯/g
s/Ì/̄/g
s/Ì//g
s/Ì/̂/g
s/Ì//g
s/Ì//g
s/Ë¿/˿/g
s/˾/˾/g
s/˽/˽/g
s/˼/˼/g
s/Ë»/˻/g
s/˺/˺/g
s/˹/˹/g
s/˸/˸/g
s/Ë·/˷/g
s/˶/˶/g
s/˵/˵/g
s/Ë´/˴/g
s/˳/˳/g
s/˲/˲/g
s/˱/˱/g
s/˰/˰/g
s/˯/˯/g
s/Ë®/ˮ/g
s/Ë/˭/g
s/ˬ/ˬ/g
s/Ë«/˫/g
s/˪/˪/g
s/Ë©/˩/g
s/˨/˨/g
s/˧/˧/g
s/˦/˦/g
s/Ë¥/˥/g
s/ˤ/ˤ/g
s/Ë£/ˣ/g
s/Ë¢/ˢ/g
s/Ë¡/ˡ/g
s/Ë /ˠ/g
s/Ë/˟/g
s/Ë/˞/g
s/Ë/˝/g
s/Ë//g
s/Ë/˛/g
s/Ë/˚/g
s/Ë/˙/g
s/Ë/˘/g
s/Ë/˗/g
s/Ë/˖/g
s/Ë/˕/g
s/Ë/˔/g
s/Ë/˓/g
s/Ë/˒/g
s/Ë/ˑ/g
s/Ë/ː/g
s/Ë/ˏ/g
s/Ë/ˎ/g
s/Ë/ˍ/g
s/Ë/ˌ/g
s/Ë/ˋ/g
s/Ë/ˊ/g
s/Ë/ˉ/g
s/Ë/ˈ/g
s/Ë/ˇ/g
s/Ë//g
s/Ë
/˅/g
s/Ë/˄/g
s/Ë/˃/g
s/Ë/˂/g
s/Ë/ˁ/g
s/Ë/ˀ/g
s/Ê¿/ʿ/g
s/ʾ/ʾ/g
s/ʽ/ʽ/g
s/ʼ/ʼ/g
s/Ê»/ʻ/g
s/ʺ/ʺ/g
s/ʹ/ʹ/g
s/ʸ/ʸ/g
s/Ê·/ʷ/g
s/ʶ/ʶ/g
s/ʵ/ʵ/g
s/Ê´/ʴ/g
s/ʳ/ʳ/g
s/ʲ/ʲ/g
s/ʱ/ʱ/g
s/ʰ/ʰ/g
s/ʯ/ʯ/g
s/Ê®/ʮ/g
s/Ê/ʭ/g
s/ʬ/ʬ/g
s/Ê«/ʫ/g
s/ʪ/ʪ/g
s/Ê©/ʩ/g
s/ʨ/ʨ/g
s/ʧ/ʧ/g
s/ʦ/ʦ/g
s/Ê¥/ʥ/g
s/ʤ/ʤ/g
s/Ê£/ʣ/g
s/Ê¢/ʢ/g
s/Ê¡/ʡ/g
s/Ê /ʠ/g
s/Ê/ʟ/g
s/Ê/ʞ/g
s/Ê/ʝ/g
s/Ê/ʜ/g
s/Ê/ʛ/g
s/Ê/ʚ/g
s/Ê/ʙ/g
s/Ê/ʘ/g
s/Ê/ʗ/g
s/Ê/ʖ/g
s/Ê/ʕ/g
s/Ê/ʔ/g
s/Ê/ʓ/g
s/Ê/ʒ/g
s/Ê/ʑ/g
s/Ê/ʐ/g
s/Ê/ʏ/g
s/Ê/ʎ/g
s/Ê/ʍ/g
s/Ê/ʌ/g
s/Ê/ʋ/g
s/Ê/ʊ/g
s/Ê/ʉ/g
s/Ê/ʈ/g
s/Ê/ʇ/g
s/Ê/ʆ/g
s/Ê
/ʅ/g
s/Ê/ʄ/g
s/Ê/ʃ/g
s/Ê/ʂ/g
s/Ê/ʁ/g
s/Ê/ʀ/g
s/É¿/ɿ/g
s/ɾ/ɾ/g
s/ɽ/ɽ/g
s/ɼ/ɼ/g
s/É»/ɻ/g
s/ɺ/ɺ/g
s/ɹ/ɹ/g
s/ɸ/ɸ/g
s/É·/ɷ/g
s/ɶ/ɶ/g
s/ɵ//g
s/É´/ɴ/g
s/ɳ/ɳ/g
s/ɲ/ɲ/g
s/ɱ/ɱ/g
s/ɰ/ɰ/g
s/ɯ/ɯ/g
s/É®/ɮ/g
s/É/ɭ/g
s/ɬ/ɬ/g
s/É«/ɫ/g
s/ɪ/ɪ/g
s/É©/ɩ/g
s/ɨ/ɨ/g
s/ɧ/ɧ/g
s/ɦ/ɦ/g
s/É¥/ɥ/g
s/ɤ/ɤ/g
s/É£/ɣ/g
s/É¢/ɢ/g
s/É¡/ɡ/g
s/É /ɠ/g
s/É/ɟ/g
s/É/ɞ/g
s/É/ɝ/g
s/É/ɜ/g
s/É/ɛ/g
s/É/ɚ/g
s/É//g
s/É/ɘ/g
s/É/ɗ/g
s/É/ɖ/g
s/Â/ /g
s/É/ɕ/g
s/É/ɔ/g
s/É/ɓ/g
s/É/ɒ/g
s/É/ɑ/g
s/É/ɐ/g
s/É/ɏ/g
s/É/Ɏ/g
s/É/ɍ/g
s/É/Ɍ/g
s/É/ɋ/g
s/É/Ɋ/g
s/É/ɉ/g
s/É/Ɉ/g
s/É/ɇ/g
s/É/Ɇ/g
s/É
/Ʌ/g
s/É/Ʉ/g
s/É/Ƀ/g
s/É/ɂ/g
s/É/Ɂ/g
s/É/ɀ/g
s/È¿/ȿ/g
s/Ⱦ/Ⱦ/g
s/Ƚ/Ƚ/g
s/ȼ/ȼ/g
s/È»/Ȼ/g
s/Ⱥ/Ⱥ/g
s/ȹ/ȹ/g
s/ȸ/ȸ/g
s/È·/ȷ/g
s/ȶ/ȶ/g
s/ȵ/ȵ/g
s/È´/ȴ/g
s/ȳ/ȳ/g
s/Ȳ/Ȳ/g
s/ȱ/ȱ/g
s/Ȱ/Ȱ/g
s/ȯ/ȯ/g
s/È®/Ȯ/g
s/È/ȭ/g
s/Ȭ/Ȭ/g
s/ß¿/߿/g
s/È«/ȫ/g
s/Ȫ/Ȫ/g
s/È©/ȩ/g
s/Ȩ/Ȩ/g
s/ȧ/ȧ/g
s/Ȧ/Ȧ/g
s/È¥/ȥ/g
s/Ȥ/Ȥ/g
s/È£/ȣ/g
s/È¢/Ȣ/g
s/È¡/ȡ/g
s/È /Ƞ/g
s/È/ȟ/g
s/È/Ȟ/g
s/È/ȝ/g
s/È/Ȝ/g
s/È/ț/g
s/È/Ț/g
s/È/ș/g
s/È/Ș/g
s/È/ȗ/g
s/È/Ȗ/g
s/È/ȕ/g
s/È/Ȕ/g
s/È/ȓ/g
s/È/Ȓ/g
s/È/ȑ/g
s/È/Ȑ/g
s/È/ȏ/g
s/È/Ȏ/g
s/È/ȍ/g
s/È/Ȍ/g
s/È/ȋ/g
s/È/Ȋ/g
s/È/ȉ/g
s/È/Ȉ/g
s/È/ȇ/g
s/È/Ȇ/g
s/È
/ȅ/g
s/È/Ȅ/g
s/È/ȃ/g
s/È/Ȃ/g
s/È/ȁ/g
s/È/Ȁ/g
s/Ç¿/ǿ/g
s/Ǿ/Ǿ/g
s/ǽ/ǽ/g
s/Ǽ/Ǽ/g
s/Ç»/ǻ/g
s/Ǻ/Ǻ/g
s/ǹ/ǹ/g
Nun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss. Die Lösung den Script auf mehrere kleinere Scripts zu verteilen ist nicht zielführend.
Kann man so einen Script mit AWK oder Perl umschreiben, damit es schneller geht? Leider habe ich da nicht so viel Ahnung.
Danke!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 640480
Url: https://administrator.de/forum/sed-script-ist-zu-langsam-perl-bzw-awk-als-alternative-640480.html
Ausgedruckt am: 23.04.2025 um 06:04 Uhr
11 Kommentare
Neuester Kommentar
Nun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss.
Definiere doch bitte mal langsam?2 Minuten? 2 Stunden? 2 Tage?
Kann man so einen Script mit AWK oder Perl umschreiben, damit es schneller geht? Leider habe ich da nicht so viel Ahnung.
SED ist ein kompiliertes Programm. Es ist per Definition schneller als Pearl und AWK da dieses Skript-Sprachen sind.Wobei AWK genau dafür gemacht wurde.
Müsste man schlicht ausprobieren.
Dein Problem kommt rein von der rechenleistung.
Für jedes Zeichen in Deinen 2GB muss er 70.000 Vergleiche durchführen.
2.000.000.000 x 70.000 = 140.000.000.000.000 Vergleiche + Die Ersetzungen
Wichtig ist, dass Du möglichst alles in den RAM bekommst.
Ich weiß halt nicht wie schlau SED programmiert ist.
Am einfachsten wäre ein eigenes Programm in C# C++ schreiben (lassen).
Das sollte nicht so aufwendig sein.
Stefan
Hallo,
witzig, passt
70.000 Zeichen zum ersetzem
10 Zeichen/Sekunde (geraten)
700.000 Sekunden
11.667 Minuten
194 Stunden
8,10 Tage
Ich denke, dass man mit einem optimierten Multithreadingprogramme durchaus in den einstellungen Stundenbereich vorstoßen kann.
Dass muss natürlich Jemand programmieren.
Ich glaube kaum, dass Du da mit einer Skript-Lösung deutlich schneller wirst.
Stefan
witzig, passt
70.000 Zeichen zum ersetzem
10 Zeichen/Sekunde (geraten)
700.000 Sekunden
11.667 Minuten
194 Stunden
8,10 Tage
Ich denke, dass man mit einem optimierten Multithreadingprogramme durchaus in den einstellungen Stundenbereich vorstoßen kann.
Dass muss natürlich Jemand programmieren.
Ich glaube kaum, dass Du da mit einer Skript-Lösung deutlich schneller wirst.
Stefan

Wenn's um Kodierungskorrektur geht, würde mir an deiner Stelle stattdessen mal iconv anschauen
https://linux.die.net/man/1/iconv
https://linux.die.net/man/1/iconv

Oi, da hat sich aber einer ausgetobt
.
SED ist aber schon eines der schnellsten unter den Produkten zur Änderung von Dateien.
SED ist aber schon eines der schnellsten unter den Produkten zur Änderung von Dateien.
Zitat von @Gustaff:
sed -f Replace.sed Muster.txt > Muster1.txt
Nun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss.
sed -f Replace.sed Muster.txt > Muster1.txt
Nun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss.
stichwort: parallel
mit "parallel" habe ich schon einige challenge gegen programmierer bzgl. performce gewonnen.
z.b.:
cat Muster1.txt | parallel -gnu " sed -f Replace.sed"......
siehe dazu: linux bash parallel
Zitat von @StefanKittel:
2 Minuten? 2 Stunden? 2 Tage?
@StefanNun ist klar, dass sed-Script zu langsam ist, wenn ich eine txt-Datei von der Größe von 2GB (also mehrere Millionen Zeilen) korrigieren muss.
Definiere doch bitte mal langsam?2 Minuten? 2 Stunden? 2 Tage?
Kann man so einen Script mit AWK oder Perl umschreiben, damit es schneller geht? Leider habe ich da nicht so viel Ahnung.
SED ist ein kompiliertes Programm. Es ist per Definition schneller als Pearl und AWK da dieses Skript-Sprachen sind.Pearl != Perl
Ja ich weiß ein Vertippper.
Gruss Penny.