python怎么调用PowerShell执行命令
时间: 2024-11-12 12:36:13 浏览: 28
在Python中调用PowerShell执行命令,可以利用`subprocess`模块结合`popen`函数,因为Windows平台支持`cmd.exe`或者`powershell.exe`来运行外部命令。以下是一个基本示例:
```python
import subprocess
def run_powershell_command(command):
try:
# 使用shell=True允许执行系统命令
process = subprocess.Popen(['powershell', '-Command', command],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
shell=True)
output, error = process.communicate() # 获取命令输出和错误信息
if process.returncode == 0:
return output.decode('utf-8') # 如果无误,输出解码后的字符串
else:
print(f"PowerShell命令执行出错,错误码:{process.returncode}\n错误信息:{error.decode('utf-8')}")
except Exception as e:
print(f"执行PowerShell命令时发生异常:{str(e)}")
# 调用PowerShell命令
command = "Get-CimInstance -ClassName CIM_VideoControllerResolution | Select-Object -Property SettingID"
output = run_powershell_command(command)
if output:
print("PowerShell命令执行结果:", output)
```
在这个例子中,我们传递一个字符串形式的PowerShell命令给`run_powershell_command`函数,该函数会启动一个新的PowerShell进程,并捕获其标准输出和错误信息。如果返回码为零,则认为命令成功执行。
阅读全文