我正在寻找我的 Windows 计算机上所有 chrome 实例的启动时间。在 powershell 中,我可以通过
get-process chrome | Format-Table StartTime
来完成此操作。
我想在 python 脚本中执行此操作并使用其输出。我的代码如下:
import subprocess
call = "powershell get-process chrome | powershell Format-Table ProcessName, StartTime"
process = subprocess.Popen(call, stdout=subprocess.PIPE, stderr=None, shell=True)
outputs = process.communicate()
print(outputs)
即使打开了 chrome,此命令的输出也是
['']
。
如果我将
call
更改为
call = "powershell get-process chrome"
这将按预期输出表格。我认为该错误与管道运算符有关。
您需要转义管道运算符,才能使其在子进程中与 powershell 良好配合。将
call
更改为
call = "powershell get-process chrome ^| Format-Table ProcessName, StartTime"
解决问题。