Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.python > #5242
| From | robert <robert@redcor.ch> |
|---|---|
| Newsgroups | de.comp.lang.python |
| Subject | [Python-de] probleme mit python 3 popen |
| Date | 2018-09-23 16:08 +0200 |
| Message-ID | <mailman.78.1537711701.2746.python-de@python.org> (permalink) |
| References | <33920c93-417b-ef60-4f54-cdfb878ed21c@redcor.ch> |
Hoi zäme,
ich bin dabei scripts von v2 auf v3 zu konvertieren.
Jetzt habe ich ein Problem mit popen:
ich konstruiere einen Popen-Aufruf wie folgt:
Zuerst suche ich wo der virtualenvwrapper installiert ist:
cmd =['/bin/bash', '-c', 'echo $(which virtualenvwrapper.sh)']
p =subprocess.Popen(cmd, stdout=PIPE)
virtualenvwrapper =p.communicate()[0].strip()
Dann bastle ich einen bash Aufruf, in dem Virtualenvwrapper aktiv ist,
und nutze diesen um einen Eintrag beim Virtualenwrapper zu löschen.
Dieses Vorgehen ist nötig, weil sonst bash virtualenvwrapper nicht
kennt. Hier der Popen-Aufruf:
commands ="""
export WORKON_HOME=%(home)s/.virtualenvs\n
export PROJECT_HOME=/home/robert/Devel\n
source %(virtualenvwrapper)s\n
rmvirtualenv %(site_name)s
"""%{
'home': os.path.expanduser("~"),
'virtualenvwrapper': virtualenvwrapper,
'site_name': site_name
}
p =subprocess.Popen(
'/bin/bash', stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
out, err =p.communicate(commands.encode())
Das funktionierte mit Python 2.7 gut. Der einzige unterschied war, dass
ich p.communicate(commands), anstelle von
p.communicate(commands.encode()) aufrufe. In Python 3 Bekomme ich
folgende Fehlermeldung: /bin/bash: line 6:
b/home/robert/.virtualenvs/workbench/bin/virtualenvwrapper.sh: No such
file or directory es scheint das b vor b/home/robert/.. zu sein, dass
den Fehler hervorruft. Wie muss ich vorgehen, um dieses Problem zu
vermeiden? Wenn ich dem Command string zuerst redigiere:
commands =commands.replace("b'/home", "'/home").encode()
funktionierts, aber das kann ja keine Lösung sein. Danke Robert
Back to de.comp.lang.python | Previous | Next — Next in thread | Find similar
[Python-de] probleme mit python 3 popen robert <robert@redcor.ch> - 2018-09-23 16:08 +0200 Re: [Python-de] probleme mit python 3 popen Peter Otten <__peter__@web.de> - 2018-09-24 16:49 +0200
csiph-web