参考官方文档,测试下列代码,把oracle的进程映射到python的字典中:

[oracle@ycr python]$ more pro_get.py 
import re
import subprocess

args = ['ps', 'aux']
ps = subprocess.Popen(args, stdout=subprocess.PIPE)
processes = ps.stdout.readlines()
header = re.split('\s+', processes.pop(0))[:-1]
header.remove('COMMAND')

PS = {}
for process in processes:
  columns = re.split('\s+', process)
  if columns[0]!='oracle':
       continue
  PS[int(columns[1])] = {}
  for position, column in enumerate(columns[:9]):
       PS[int(columns[1])][header[position].lower()] = column
       PS[int(columns[1])]['command'] = ' '.join(columns[10:])

from pprint import pprint
pprint(PS)

输出结果如下:
[oracle@ycr python]$ python pro_get.py 
{2564: {'%cpu': '0.0',
        '%mem': '1.4',
        'command': 'ora_pmon_ycr ',
        'pid': '2564',
        'rss': '27276',
        'start': '04:09',
        'stat': 'Ss',
        'tty': '?',
        'user': 'oracle',
        'vsz': '1089560'},
 2566: {'%cpu': '0.0',
        '%mem': '1.0',
        'command': 'ora_psp0_ycr ',
        'pid': '2566',
        'rss': '20112',
        'start': '04:09',
        'stat': 'Ss',
        'tty': '?',
        'user': 'oracle',
        'vsz': '1089560'},
 2568: {'%cpu': '1.9',
        '%mem': '1.0',
        'command': 'ora_vktm_ycr ',
        'pid': '2568',
        'rss': '19724',
        'start': '04:09',
        'stat': 'Ss',
        'tty': '?',
        'user': 'oracle',
        'vsz': '1089560'},
 2572: {'%cpu': '0.0',
        '%mem': '1.7',
        'command': 'ora_gen0_ycr ',
        'pid': '2572',
        'rss': '34032',
        'start': '04:09',
        'stat': 'Ss',
        'tty': '?',
        'user': 'oracle',
        'vsz': '1091300'},

.................................

 
 

实验:将系统进程映射移到 Python 字典中的更多相关文章

  1. python字典中的元素类型

    python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...

  2. 判断python字典中key是否存在的两种方法

    今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实现. 在python的字典的属性方法里面有一个has_key()方法,这个方法使 ...

  3. python字典中添加项

    body_daily_close = { "mappings": { "properties": { "trade_date": { &qu ...

  4. 十四、python字典中的方法汇总

    '''1.访问.修改,删除字典中的值:''' dict={'a':'11','b':'22','c':'33','d':'44'}print dict['a'],dict['d'] #访问dict[' ...

  5. 【python-字典】判断python字典中key是否存在的

    一般有两种通用做法: 第一种方法:使用自带函数实现: 在python的字典的属性方法里面有一个has_key()方法: #生成一个字典 d = {'name':Tom, 'age':10, 'Tel' ...

  6. Python 字典中一键对应多个值

    #字典的一键多值 print'方案一 list作为dict的值 值允许重复' d1={} key=1 value=2 d1.setdefault(key,[]).append(value) value ...

  7. python 字典中 重复值去除

    tuple_r_dict = lambda _dict: dict(val[::-1] for val in _dict.items()) # Python3.x tuple_r_dict(tuple ...

  8. Python字典中的值为列表或字典的构造方法

    转自: https://blog.csdn.net/buside/article/details/81323871 1.值为列表的构造方法 dic = {} dic.setdefault(key,[] ...

  9. python字典中dict.get()和dict.setdefault()的异同点

    相同点: 两者是参数相同:dict.get(key, default=None), dict.setdefault(key, default=None) 如果指定的键不存在时,两者都返回默认值,默认是 ...

随机推荐

  1. git push的一些坑

    在安装git的时候我们一般会自己设置一个用户名和邮箱,这个一般设置为全局的用户名,如下所示 git config --global user.name "xxx" git conf ...

  2. git——合并分支

    A将自己的本地代码提交到远程A分支,此时master主干上有B新提交的代码,如果此时A把自己的代码merge到主干,会有冲突,那怎么办? 1.A将自己的代码提交到自己的A分支 2.git fetch ...

  3. 处理定时事件(一)---模拟Redis实现(C++)

    https://blog.csdn.net/xiyoulinux_kangyijie/article/details/78278992

  4. 单一指责原则(Single Responsibility Principle) SRP

    using System; using System.Collections.Generic; using System.Text; namespace SingleResponsibilityPri ...

  5. C#异步执行带有返回值和参数的方法,且获取返回值

    很多时候需要用到这些小知识点,做做笔记一起成长 下面是需要异步执行的方法 //获取所有的邮件 private List<EmailModel> GetEmailOnlyCount(POP3 ...

  6. temp脚本

    !/bin/bash source ${HOME_DIR}/script/ideploy_dm.inc source ${HOME_DIR}/script/comm_lib home_dir=$(cd ...

  7. Linux 下安装 Memcached 和 PHP 开启 Memcached 扩展 及 LAMP 环境的安装

    http://blog.csdn.net/liruxing1715/article/details/8269563

  8. 修改ThinkPHP的验证码类

    今天用ThinkPHP重新开发一个系统,用到了ThinkPHP的验证码类,由于我希望验证码别太复杂,希望验证码里边只有数字,却发现该Verify类并未提供设置验证码中使用的字符的配置的方法,于是查看源 ...

  9. 一、IP地址

    IP地址 1)网络地址 IP地址由网络号(包括子网号)和主机号组成,网络地址的主机号为全0,网络地址代表着整个网络. 2)广播地址 广播地址通常称为直接广播地址,是为了区分受限广播地址. 广播地址与网 ...

  10. 数据库中存放着HTML并附带样式,如何在界面上对已有的样式进行修改

    在工作中遇到这样一个问题,数据库中存放着HTML代码,并且还带有样式,我要在界面上修改他已经写好的样式,例如把这个字段的字体改成微软雅黑,数据库中对应字段内容如下图 在界面面上是直接把上图这段HTML ...