Ich benutze GNU SED seit ein paar Jahren ein und aus. Es bringt mich manchmal ein bisschen durcheinander, aber es macht einen guten Job ... für Einzelbyte-Zeichensätze!
Hin und wieder stelle ich fest, dass GNU SED Unicode-fähig ist, aber das, was ich am nächsten gesehen habe, ist der "binäre" Modus. Und binär ist kein Unicode.
Kann GSED eine Unicode-Textdatei mit CodePoint-Auflösung verarbeiten, einschließlich und insbesondere \ r \ n (Windows) ... und wenn möglich, erwartet es UTF-8, UTF-16 oder was? und wie erkennt SED die Kodierung?
10
Antworten:
Ich weiß nicht viel über sed, aber nach einigem harten Googeln scheint es Unterstützung für eine Vielzahl von Codepages durch die LANG-Umgebungsvariable zu haben. Ich glaube, dass UTF-8 in Abwesenheit von LANG tatsächlich der Standard ist. Ich weiß allerdings nicht, wie der Windows-Port eingerichtet ist. Ich habe den starken Verdacht, dass sed überhaupt keine Erkennungsverarbeitung für den Eingabestream durchführt.
Quellen: /programming/67410/why-does-sed-fail-with-international-characters-and-how-to-fix http://omgili.com/mailinglist/cygwin/cygwin/com /20100520123926GA1432onderneming10xs4allnl.html
Sie können auch versuchen, Escape-Zeichen wie hier erwähnt zu verwenden: http://forums.whirlpool.net.au/forum-replies-archive.cfm/841095.html Das scheint jedoch sehr umständlich zu sein.
quelle