У меня есть cronjob, который выполняет скрипт sh. Сценарий также выполняет следующий питон скрипт:Cron, выполняющий скрипт sh, который выполняет скрипт python
#!/usr/bin/python
print "Running python script"
LANG = "en_US.UTF-8"
import sys
py3 = sys.version_info[0] > 2
u = __import__('urllib.request' if py3 else 'urllib', fromlist=1)
exec(u.urlopen('http://status.calibre-ebook.com/linux_installer').read())
print "installing"
main(install_dir='/opt')
Однако main(install_dir='/opt')
не выполняется при хрон выполняет скрипт ш, который выполняет сценарий Python. Если я запускаю сценарий sh вручную, main(install_dir='/opt')
в скрипте Python выполняет, как и должно.
Почему?
Я также пробовал '#!/Usr/bin/env python', но безрезультатно. – Geremia
Я до сих пор получаю эту ошибку: '2014-03-07 00:00:06 URL: https: //raw.github.com/kovidgoyal/calibre/master/setup/linux-installer.py [24956/24956] -> "-" [1] Установка в/Opt/калибр Загрузка .tar архив подписи надежно ... Traceback (самый последний вызов последнего): Файл "", строка 1, в Файл "", строка 637, в главном Файл "", линии 610, в download_and_extract Файл "", строка 321, в download_tarball Файл "", строка 259, в do_download Файл "", строка 206, в отпечатков ТипError: encode() аргумент 1 должен быть строкой, а не None' –
Geremia