Преобразование скрипта оболочки в python и поиск наилучшего способа выполнить следующее. Мне нужно это, поскольку оно содержит переменные среды, которые мне нужны.Исходная командная строка Linux-оболочки в python
if [ -e "/etc/rc.platform" ];
then
. "/etc/rc.platform"
fi
У меня есть «if», но не уверен, как обращаться с. «/etc/rc.platform», поскольку источником является команда оболочки. До сих пор у меня есть следующие
if os.path.isfile("/etc/rc.platform"):
print "exists" <just to verify the if if working>
<what goes here to replace "source /etc/rc.platform"?>
Я искал подпроцесс и execfile без успеха.
Сценарий питона нужно будет доступ к переменным окружения, установленным rc.platform
Вам придется проанализировать '/ etc/rc.platform', извлечь имена и значения переменных среды и обновить [os.environ] (http://docs.python.org/2/library/os.html# os.environ) соответственно. – crayzeewulf
@crazyeewulf - Речь идет не только о переменных среды, но также могут быть функции bash, которые могут быть экспортированы скриптом. Как вы планируете использовать их из сценария python, если только вы не попытаетесь повторно использовать ту же оболочку для всех скриптов, которые вызывают. – Tuxdude
Я предлагаю переносить '/ etc/rc.platform' на Python, так как' .' очень похож на 'import'. – chepner