Heim >Backend-Entwicklung >Python-Tutorial >Wie erhalte ich die Ergebnisse eines lang laufenden Befehls in pypsexec?
Ich verwende pypsexec, um eine Verbindung zu einem Remote-Windows-Computer herzustellen. Ich muss eine Liste von Dateien mit einer bestimmten Erweiterung finden. Das ist es, was ich jetzt mache.
command = "dir /b/s *.py" client.run_executable("cmd.exe", arguments=f"/c {command}", asynchronous=True)
Als ich keine asynchronen Parameter verwendet habe, erhielt ich zunächst keine Antwort. Nachdem ich die Dokumentation gelesen habe, kann ich sehen, dass lang laufende Aufgaben (wie meine) diesen Parameter verwenden sollten. Es enthält jedoch keine klaren Anweisungen, wie die Ausgabe nach Abschluss des Auftrags abgerufen werden kann.
Vielen Dank im Voraus!
Das liegt daran, dass Sie die Ausgabe nicht erhalten können. Siehe https://github.com/jborean93/pypsexec /blob/master/pypsexec/client.py#l436-l466
if not interactive and not asynchronous: [...] # Here is where stdout and stderr is set else: stdout_out = None stderr_bytes = None [...] # Here is some code that doesn't change stdout_out or stderr_bytes return stdout_out, stderr_bytes, return_code
Wie Sie sehen können, verwenden Sie asynchronous=true
时,stdout 和 stderr 将始终为 none
Das obige ist der detaillierte Inhalt vonWie erhalte ich die Ergebnisse eines lang laufenden Befehls in pypsexec?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!