Команда Sed, вызывающая вывод азиатских символов в файл - PullRequest
2 голосов
/ 22 июля 2011

Это проблема с вопросом , который я задал ранее . В основном, когда я делаю это:

sed '/Q/{
s/Q//g
r /Users/ericbrotto/Desktop/question.txt
}' Commision.txt

все хорошо, но новый вывод просто выводится на консоль.

Когда я делаю это:

sed '/Q/{
s/Q//g
r /Users/ericbrotto/Desktop/question.txt
}' Commision.txt > newFile

вывод печатается в файл, но моя новая строка (та, которая была должным образом заменена в предыдущем выводе) теперь читается как набор азиатских (я полагаю, мандаринских) символов.

Есть идеи?

1 Ответ

1 голос
/ 09 ноября 2011

Похоже, у вас несоответствие кодировки.

Держу пари, что у вашей оболочки Commision.txt и question.txt не все кодировки одинаковы.Из-за этого sed заменяет часть широкого символа, который он не распознает как широкий.Все последующие кодировки отключены на половину символа, и в результате получается китайский.

См. этот вопрос для обсуждения аналогичной проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...