![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
amar0k |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.6.2008 Репутация: нет Всего: нет |
имеем програмку, которая бежит по заданым папкам и создает на все файлы линки в другом месте. файлы на английском русском и иврите.
если запускать из терминала или через ГУИ программы - все путем но если задать автозапуск через crontab - все время вылетает :
падает соответственно тут: for root, dirs, files in os.walk(lastBackUp+src) обе переменныe могут быть на любом из 3-х языков. все в юникоде. почему падает ТОЛЬКО при вызове через crontab ?? |
|||
|
||||
powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 1 Всего: 97 |
Вы уверены, что без кронтаба проверили на всех языках? Попробуйте так:
|
|||
|
||||
amar0k |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.6.2008 Репутация: нет Всего: нет |
unicode(lastBackUp+src, 'utf-8') - тоже не сработал.
а вот string.encode('utf-8') для каждой строки, что передается параметром в os.walk() и os.path.join() таки помогло. хотя странно, при запуске в живую никаких проблем небыло.. нашел еще несколько топиков в гугле с такой же проблемой.. но в любом случае для меня этот "костыль" подходит ![]() рано обрадовался.. после пары тестов снова стали вылетать ... мля Это сообщение отредактировал(а) amar0k - 29.8.2009, 15:55 |
|||
|
||||
av0000 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 11.2.2009 Репутация: 1 Всего: 2 |
Аналогичная ситуация... (Ubuntu 8.10) Даже хуже - похоже, "теряется" stdout. По симптомам - если для запущенного процесса не создана нормальная консоль, ему сильно всё урезается. В данном случае, похоже, выставляется локаль по-умолчанию "ascii". Возможно, спасут глобальные установки LANG, LC_ALL и т.п. Для себя решал запуском через su - с лишним bash-ем в памяти готов мириться... |
|||
|
||||
amar0k |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.6.2008 Репутация: нет Всего: нет |
||||
|
||||
av0000 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 11.2.2009 Репутация: 1 Всего: 2 |
Было как-то так:
НО! Поскольку падения таки не совсем прекратились (там, правда exception-ы ещё были виноваты), переделал весь вывод на logging с передачей имени файла лога как параметра. Да и редирект stderr-а, показалось, не(-всегда) срабатывает. Можно, конечно, помудрить с подменой stdout, но лень и стандартнее сделать через logging:
|
||||
|
|||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |