你好,我有下面的Python代码,它们使用powershell脚本调用pwsh.exe。 Powershell脚本只有两行。
write-output "This is a line"
Start-Sleep -Seconds 5
调用/运行脚本的Python代码:
import subprocess
powershellProcess = r"X:\Program Files\PowerShell\6-preview\pwsh.exe"
fileToRun = r"D:\ProgrammingAndScripting\Powershell\Scripts\Test\test.ps1"
runit = subprocess.run([powershellProcess, fileToRun], check=True, capture_output=True)
print(str(runit.stdout) + "\n")
现在代码可以正常工作了。我的问题如下:当我使用capture_output = True时,将弹出一个Powershell控制台,该控制台仍然为空,并且“这是一行”将出现在Python IDE中。当我删除capture_output = True时,将弹出一个Powershell控制台并显示“这是一行”。 Python IDE将显示:无。
是否有办法既可以通过python捕获输出,又可以在powershell控制台窗口中显示出来?