python 调用PowerShell输入命令
时间: 2024-11-12 10:35:28 浏览: 11
在Python中调用PowerShell(Windows PowerShell)来执行命令,可以借助第三方库`subprocess`或者`psutil`,这两个库允许你在Python中执行操作系统命令。这里分别给出两个例子:
### 使用`subprocess`模块
```python
import subprocess
# 使用shell=True是为了执行系统命令,而不是Python命令
command = 'powershell -Command "Get-Process | Where-Object {$_.Name -eq \"your_process_name\"}"'
output = subprocess.check_output(command, shell=True, encoding='utf-8')
print(output)
```
在这个例子中,`"-Command"`后面的字符串就是你要在PowerShell里运行的命令。
### 使用`psutil`模块(仅适用于查询进程信息)
如果只需要简单地获取进程信息,而不需要完整的PowerShell交互环境,可以直接使用`psutil`库:
```python
import psutil
def get_powershell_process(name):
for proc in psutil.process_iter(['name']):
if proc.info['name'] == name:
return proc
return None
# 获取名为"your_process_name"的进程
proc = get_powershell_process("your_process_name")
if proc is not None:
print(f'PID: {proc.pid}, Name: {proc.name()}')
```
请注意,`psutil`主要用于操作系统的进程管理,对于复杂的PowerShell命令执行,还是推荐使用`subprocess`。
阅读全文