python检测系统输入一串命令之后新增的pid
时间: 2024-03-05 17:48:51 浏览: 9
在Python中,可以使用`subprocess`模块来执行系统命令,并获取其输出结果。可以使用`ps`命令来列出当前系统所有进程,然后与之前记录的进程列表进行比较,以找到新增的进程。
以下是一个示例代码:
```python
import subprocess
# 记录当前系统所有进程的PID
result = subprocess.run(['ps', '-A', '-o', 'pid'], stdout=subprocess.PIPE)
pids = set(result.stdout.decode().split('\n')[1:-1])
# 执行一些系统命令
subprocess.run(['ls', '-l'])
subprocess.run(['sleep', '2'])
subprocess.run(['echo', 'Hello World'])
# 检查新增的进程PID
result = subprocess.run(['ps', '-A', '-o', 'pid'], stdout=subprocess.PIPE)
new_pids = set(result.stdout.decode().split('\n')[1:-1]) - pids
print('新增的进程PID:', list(new_pids))
```
在这个例子中,我们首先使用`ps`命令来记录当前系统所有进程的PID。然后执行一些系统命令,最后再次使用`ps`命令来获取系统所有进程的PID,并找到新增的进程PID。
需要注意的是,这里只是演示了一种简单的方法,用于获取新增的进程PID。在实际应用中,可能需要更复杂的方法来过滤出需要的PID。另外,不同操作系统下,获取进程PID的命令可能会有所不同。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)