python 正则表达式获取进程信息文本 ?P 用法

来源:互联网 发布:网络歌曲经典老歌 编辑:程序博客网 时间:2024/06/07 01:51

在文件ps_result中存放着进程用户名,进程Id,进程命令这三列信息,这些信息有执行ps -ef后处理得到,文件中格式如下:

root 1      /usr/lib/systemd/systemd --system --deserialize 25
root 624      /usr/sbin/lvmetad -f
root 720      /sbin/auditd -n
root 733      /sbin/audispd
root 736      /usr/sbin/sedispatch


想从文件中获取每一个进行的相关信息,用正则表达式如下:

for line in open('ps_result').readlines():       r = re.search(r'^(?P<puser>.*?) (?P<pid>\d+?) {1,}(?P<pcmd>.*$)',line)       print "puser:%s ; pid:%s ; pcmd:%s" % (r.group('puser'),r.group('pid'),r.group('pcmd'))

例子中,利用正则表达式的?P用法,将匹配后的信息存放到变量中打印出来

0 0
原创粉丝点击