Ich habe ein Batch-Skript, das eine Konfigurationsdatei nach seiner Ausführung erzeugt, die Konfigurationsdatei hat einige Daten darin. Wenn ich es von Eingabeaufforderung wie folgt ausführen bekomme ich die gewünschte Ausgabe:Warum Batch-Datei nicht funktioniert, wenn aus Python-Skript oder wenn durch Doppelklick ausgeführt wird?
C:/> start.bat
aber wenn ich versuche, aus Python-Skript ausführen wie folgt oder, selbst wenn ich es einem Doppelklick auf und führe ich die Konfigurationsdatei zu tun bekommen, aber es keine erforderlichen Daten enthalten sie nur im Inneren ‚0‘ haben:
import subprocess as sp
p= sp.Popen("C:/pathtobatch/start.bat",stdin=sp.PIPE, stdout = sp.PIPE, stderr=sp.PIPE)
im Inneren des Batch-Skript (start.bat) i bin eigentlich ein python-Skript ausgeführt wird und seine Daten in einer Konfigurationsdatei abrufen wie folgt:
python C:\inetpub\ftproot\sample.py > log.txt
set myvar =< log.txt
del log.txt
echo %errorlevel% %myvar% >C:\inetpub\ftproot\config.txt
Ich muss den Stapel (start.bat) aus dem Python-Skript ausführen und die Datei config.txt mit den erforderlichen Daten generieren. Also, wie soll ich das machen? Warum die start.bat funktioniert nicht gut, wenn ich es doppelklicke und warum funktioniert es gut, wenn ich es von der Eingabeaufforderung aus ausführen.
put 'pause' am Ende der Fledermaus und versuchen Sie ein Doppelklick. – WhoAmI
@WhoAmI nein es woking nicht durch Hinzufügen von Pause auch.: – Learner
Geben Sie vollständige Pfade, überall. Diese sinnlose Frage, die sich auf die Konfiguration der Ausführungsumgebung bezieht, wird immer wieder gestellt. Geben Sie genau an, was Sie möchten. '% userprofile% \ desktop' ist normalerweise der Desktop des Benutzers. –