Python вызывает команды оболочки. Какой тип оболочки запущен?

У меня есть следующая функция python, которая позволяет мне запускать команды оболочки из сценария python:

import subprocess   

def run_shell_command(cmd,cwd=None):
      retVal = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, cwd=cwd);
      retVal = retVal.stdout.read().strip('\n');
      return(retVal);

Это позволяет мне делать такие вещи, как:

output = run_shell_command("echo 'Hello world'")

Мой вопрос: с определением run_shell_command выше, какой тип оболочки запускается? (Например, логин против интерактивного ).

Знание, какая оболочка запущена, поможет узнать, какие точечные файлы (например, ] .bashrc , .profile и т. д.) выполняются до моей команды оболочки.

5
задан Amelio Vazquez-Reina 2 March 2012 в 19:51
поделиться