【发布时间】:2020-08-07 11:40:55
【问题描述】:
我想执行这个命令:
powershell.exe -Command "Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher | Sort DisplayName -Unique"
在 Pycharm IDE 中使用 Python 3.7.3。如果我在终端中剪切并粘贴相同的命令,我会得到不同的结果,即使 Pycharm IDE 中的终端也会产生正确的结果:
DisplayName DisplayVersion Publisher
----------- -------------- ---------
Avatier Credential Provider 10.6.18080 Avatier Corporation
Avatier SetUpCachedCred 64-bit 1.0.6 Avatier
.....
但运行框架,通过 os.system(cmd) 或 subprocess.Popen(...)、subprocess.check_output(...) 执行相同的命令,我得到不同的结果,如下所示:
DisplayName DisplayVersion Publisher
----------- -------------- ---------
Adobe Acrobat Reader DC 20.006.20042 Adobe Systems Incorporated
Adobe Refresh Manager 1.8.0 Adobe Systems Incorporated
BootRacer 7.90 7.90 Greatis Software
Carbon Black Sensor 6.2.2.90503 Carbon Black, Inc.
...
这是在同一台物理机器上,Windows 10, 1909 build。 请帮助解决方法和/或解决方案。
【问题讨论】:
标签: python terminal pycharm subprocess windows-10-desktop