Питон и окружающая средаPython

Программы на Python
Anonymous
Питон и окружающая среда

Сообщение Anonymous »

У меня есть файл (

Код: Выделить всё

myenv.sh
) со следующим содержимым

Код: Выделить всё

export MYVAR="HELLO"
А еще у меня есть моя программа (

Код: Выделить всё

myhugeprogram.py
):

Код: Выделить всё

#!/usr/bin/env python
import os
print os.environ['MYVAR']
Это исполняемый файл: chmod 755 myhugeprogram.py

Теперь я создаю свою среду: source myenv.sh

И запускаю свою программу:

Код: Выделить всё

./myhugeprogram.py
HELLO
Как и ожидалось. Теперь я запускаю его неинтерактивно через SSH:

Код: Выделить всё

user1@host1:~$ ssh user2@host2 ./myhugeprogram.py
Traceback (most recent call last):
File "./myhugeprogram.py", line 3, in 
print os.environ['MYVAR']
File "/usr/lib/python2.5/UserDict.py", line 22, in __getitem__
raise KeyError(key)
KeyError: 'MYVAR'
Это нормально, поскольку я не использовал исходный код myenv.sh. Теперь вопрос:

Как мне получить файл Bash, который устанавливает некоторые переменные среды перед выполнением моего сценария Python при неинтерактивном запуске через SSH?

Вернуться в «Python»