У меня есть некоторый код Python, который печатает сообщения журнала. При запуске из командной строки, это нормально с utf-8. Сообщения журнала, содержащие специальные символы, печатаются нормально. Тем не менее, при запуске в фоновом режиме под nohup, это barfs на UTF-8 символов.
nohup python2.7 myProgram.py &
Ошибка, которую я вижу, это обычная ошибка "try кодировать utf в ascii":
UnicodeEncodeError: кодек «ascii»
не может закодировать символ u '\ u2013' в
позиция 71: порядковый номер вне диапазона (128)
Я предполагаю, что это связано с тем, что nohup сообщает Python, что у него нет нормального терминала, поэтому по умолчанию используется ascii. Есть ли способ сказать nohup запускаться с включенным utf-8 или настроить его так, чтобы символы utf-8 не вызывали сбой при запуске под nohup в фоновом режиме?