subprocess.Popen: mkvirtualenv nicht gefunden

Ich verwende virtualenvwrapper in meiner Bereitstellung. Um neue Umgebungen einzurichten, führe ich ein Python-Skript aus, das alle erforderlichen Schritte enthält.

Das Setupscript beinhaltet:

cmd = 'mkvirtualenv %s --no-site-packages'%('testname')
head = subprocess.Popen(cmd,shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for line in head.stdout.read().splitlines():
    print line

Die Ausgabe ist:

/bin/sh: mkvirtualenv: not found

Wie kann ich virtualenvwrapper in meinem Python-Skript korrekt verwenden?

BEARBEITEN:

Der folgende Code funktioniert für mich:

cmd = 'source /usr/local/bin/virtualenvwrapper.sh && mkvirtualenv %s --no-site-packages'%('testname')
head = subprocess.Popen(cmd, executable='bash', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for line in head.stdout.read().splitlines():
    print line

Danke für alle Antworten.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage