python 系统进程_在Python中监视所有系统进程

我试图用Python在我的操作系统(Ubuntu)中收集一些进程的统计信息(生命周期、开始时间/结束时间等)

其中一个任务:我编写了一个函数,它获取系统中进程的名称和ID,但它很难看。在def get_processes():

p = subprocess.Popen(['ps', '-e'], stdout=subprocess.PIPE)

raw_string, e = p.communicate()

strings_arr = raw_string.split('\n')

strings_arr = strings_arr[1:]

processes_dict = {}

# Example of ps -e ansewer: 7 ? 00:00:00 watchdog/0

for string in strings_arr:

splted = string.split()

key, value = None, None

if len(splted) == 0: continue

for item in splted:#looking for process id

if item.isdigit():

key = int(item)

break

value = splted[-1] # looking for process name

processes_dict[key] = value

return processes_dict

有人能把它变漂亮或提出更好的解决方案吗?

抱歉,我的书写错误。英语不是我的母语。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值