Я использую GNU SED и выключаю уже пару лет. Иногда это немного раскручивает меня, но делает хорошую работу ... для однобайтовых наборов символов!
Время от времени я замечаю ссылки на то, что GNU SED поддерживает Unicode, но ближе всего я видел его «двоичный» режим… и двоичный не Unicode.
Может ли GSED обрабатывать текстовый файл Unicode с разрешением CodePoint, включая, в частности, \ r \ n (Windows) ... и, если это возможно, ожидает UTF-8, UTF-16 или что? и как SED обнаруживает кодировку?
10
Ответы:
Я не знаю много о sed, но после некоторого жесткого поиска в Google, кажется, есть поддержка различных кодовых страниц через переменную окружения LANG. Я считаю, что UTF-8 на самом деле является дефолтом при отсутствии LANG. Я не знаю, как настроить порт Windows, хотя. У меня есть сильное подозрение, что sed вообще не выполняет обработку обнаружения входного потока.
Источники: /programming/67410/why-does-sed-fail-with-international-characters-and-how-to-fix http://omgili.com/mailinglist/cygwin/cygwin/com /20100520123926GA1432onderneming10xs4allnl.html
Вы также можете попробовать экранировать символы, как указано здесь: http://forums.whirlpool.net.au/forum-replies-archive.cfm/841095.html Хотя это кажется очень громоздким.
источник