ich die Batch-Lauf (ist es in anderen Ordnern als der Python-Skript) die Verwendung folgenden Codezeilen:Batch von Python-Skript ausgeführt werden, wirken, wie es in dem Ordner des Skripts ist
subprocess.Popen("the_bat.bat", creationflags=subprocess.CREATE_NEW_CONSOLE)
Die Aufgabe der batch ist ein .jar (dasselbe Verzeichnis wie batch), das Ordner und Dateien in seinem Verzeichnis erstellt, aber wenn es vom Python-Skript ausgeführt wird, startet der jar den Job im Ordner des Skripts. Haben Sie Vorschläge, wie Sie das verhindern können?
Batch-Datei ist die '% 0 'Parameter. 'Echo% ~ dp0' druckt den Ordner der Stapelverarbeitungsdatei. Siehe 'Anruf /?'. –
Das Verzeichnis, aus dem ein Programm geladen wird, ist nicht dasselbe wie das aktuelle Verzeichnis. Sie können das aktuelle Arbeitsverzeichnis des untergeordneten Prozesses mit dem Parameter 'cwd' auf' Popen' setzen. – cdarke
Code-Formatierung beim nächsten Mal verwenden –