Ich versuche change directory path of RethinkDB während der Ausführung von Python.Wie übergebe ich einen Verzeichnispfad an os.execvp
Dieser Bash-Befehl funktioniert:
rethinkdb --directory ~/ComeOnRethink
Aber dieses System Aufruf funktioniert nicht:
args = ("--directory ~/ComeOnRethink",) # RethinkDB directory to store data and metadata
os.execvp("rethinkdb", args)
Es ist das Argument zu ignorieren und RethinkDB mit Standardpfad ausgeführt wird. Wie kann ich dieses Problem beheben?
* Das funktioniert:
subprocess.Popen(['rethinkdb', '--directory', './ComeOnRethink'])
Es heißt 'FEHLER: Unbekannter Unterbefehl '~/ComeOnRethink'. Versuchen Sie 'rethinkdb help'.' –
Richtig ... Ich konzentrierte mich auf die Syntax von 'os.execpp'. Das andere Problem, das Sie haben, ist, dass die Shell '~' zum Home-Verzeichnis des aktuellen Benutzers erweitert; Das ist etwas, das 'os.execvp' nicht für Sie tun kann. – isedev
Antwort aktualisiert, um mit '~' umzugehen. – isedev