Почему временные текстовые файлы создаются в ANSI?

У меня есть большой файл журнала, и мне нужно вырезать его часть и вставить в конец того же файла... поэтому я создал скрипт, который ищет куски кода, которые мне нужны (sed), создать временный файл, вставьте его, затем перейдите к исходному файлу и удалите тот же текст. тогда я (кошка) оба файла. Проблема в том, что все мои файлы находятся в utf-8, но временный файл создается в ANSI(возможно, потому, что он содержит только "нормальные" символы), и когда я объединяю оба файла, исходный файл изменяется на ANSI, что вызывает беспорядок в некотором тексте, Я поменял своих местных жителей, но они были правильными,

en_GB.ISO-8859-1... up-to-date
  en_GB.UTF-8... up-to-date

и попробовал бесконечное количество комбинаций в моих сценариях, но результат всегда один и тот же. Я сделал этот простой тест

echo "test" >/tmp/test.txt 
echo "ção" >/tmp/test2.txt 

тогда я сделал

file/tmp/test.txt ------>it says ASCII
file /tmp/test2.txt ---->it says UTF-8 Unicode text

когда я редактирую файл в edit-plus и проверяю кодировку файла, он говорит ANSI до 1-го и UTF-8 до 2-го. но если я их перебираю, вывод в порядке (utf-8) независимо от того, какой порядок я выбрал... но используя мой большой лог-файл (уже в utf-8) и cat его вместе с временным файлом, результатом всегда будет ANSI.

Я подумал, что может быть какая-то автоконфигурация кодировки, если нет специальных символов, но я не могу понять, почему она меняется на ANSI или ASCII, когда я присоединяюсь к ним. Я использую сервер с сервером Ubuntu 14.04, и доступ с помощью Putty на машине Windows.

0 ответов

Другие вопросы по тегам