返回顶部
首页 > 资讯 > 操作系统 >python实现linux下的简单进程监
  • 513
分享到

python实现linux下的简单进程监

进程简单python 2023-01-31 01:01:01 513人浏览 泡泡鱼
摘要

最近看writeup看的有点头疼,深深感受到了自己的无知。确实还需要学习很多东西、一点一点的积累!加油! python确实很强大哦~,要想学好Python就得自己多动手堆代码! 无聊写了一个进程监控的脚本,就当做是练习。其实最终

最近看writeup看的有点头疼,深深感受到了自己的无知。确实还需要学习很多东西、一点一点的积累!加油!

python确实很强大哦~,要想学好Python就得自己多动手堆代码!
无聊写了一个进程监控的脚本,就当做是练习。其实最终实现的功能也很简单。
记录如下:
0x00:
首先这种写法要学会哦,虽然不知道具体有什么用吧,但是这代码写的,看着就很有水平!哈!

def main():
    while 1:
        psutil_process()

if __name__=="__main__":
    main()

name ==”main“的作用是为了对py的运行方式进行检测,如果模块是被导入,name的值为模块的名字,如果是直接执行name的值==”main
网上找了一个解释,贴在这里,希望有懂得人来讲讲具体区别。
0x01:
进程监控、刚开始我的想法是通过两次执行执行ps -e命令,比较不同。于是就上网
找到了subprocess模块。具体的用法还是自行百度,网上资料很多的。
主要是用subprocess.Popen()这个方法通过shell创建一个子进程,不过这个方法不太可行,主要的问题出在两者的比较上。。大家有兴趣可以去做一下,主要是为了练习python
0x02:
继续百度于是找到了psutil这个模块
代码如下:

import subprocess
import sys
import psutil
import time
import datetime
log_file='monitor_log.txt'
def print_process_infORMation(pid):
    p=psutil.Process(pid)
    message='[!][Add]pid:'+str(p.pid)+'  '+'name:'+p.name()+'  '+'username:'+p.username()+'  '+'status:'+p.status()+'  '+'start_time:'+datetime.datetime.fromtimestamp(p.create_time()).strftime("%H:%M:%S")
    print message
    fp=open(log_file,'a')
    try:
        message+='\n'
        fp.writelines(message)
    finally:
        fp.close()

def psutil_process():
    pids_1=psutil.pids()
    time.sleep(2)
    pids_2=psutil.pids()
    for pid in pids_2:
        if pid in pids_1:
            #print 'ok!'
            pass
        else:
            print_process_information(pid)
def main():
    while 1:
        psutil_process()

if __name__=="__main__":
    main()

0x03:
最后可以在改进一下

message='[!][Add]pid:'+str(p.pid)+'  '+'name:'+p.name()+'  '+'username:'+p.username()+'  '+'status:'+p.status()+'  '+'start_time:'+datetime.datetime.fromtimestamp(p.create_time()).strftime("%H:%M:%S")

这里可以用格式化输出。。做个元组什么的
0x04:
通过这个小小的进程监控,我学习了subprocess和psutil,了解了管道的单方向性。Perfect!

--结束END--

本文标题: python实现linux下的简单进程监

本文链接: https://lsjlt.com/news/184783.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python实现linux下的简单进程监
    最近看writeup看的有点头疼,深深感受到了自己的无知。确实还需要学习很多东西、一点一点的积累!加油! python确实很强大哦~,要想学好python就得自己多动手堆代码! 无聊写了一个进程监控的脚本,就当做是练习。其实最终...
    99+
    2023-01-31
    进程 简单 python
  • python进程池的简单实现
    目录创建进程池向进程池提交任务并行执行多个任务关闭进程池等待任务执行完毕Python进程池是Python标准库中multiprocessing模块提供的一种用于管理进程的方式。它可以...
    99+
    2023-03-13
    python进程池
  • linux进程监控与自动重启的简单实现方法
    目的: linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能。 实现原理: 由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重启并写入日志。 ...
    99+
    2022-06-04
    linux 进程监控 Linux监控某个进程 linux自动重启命令
  • shell+Python实现简单的链路监
    背景:游戏公司,服务器上有充值服,世界服,经分服务器等,和前端的game有链接通信,为防止链接通信故障导致线上业务中断,需要一个小脚本时刻监控线上链接状况。涉及:shell、python2.6、126免费邮箱配置:vim /usr/ligh...
    99+
    2023-01-31
    链路 简单 shell
  • springboot线程池监控的简单实现
    目录背景代码代码类结构线程池扩展类线程工具类线程bean类线程池实现类线程池监控接口类运行结果背景 在我们实际项目开发中,常常会为不同的优先级的任务设置相对应的线程池。一般我们只关注...
    99+
    2024-04-02
  • 如何进行Python Helloworld程序的简单实现
    本篇文章为大家展示了如何进行Python Helloworld程序的简单实现,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。对于一个学习过编程语言的朋友来说,肯定会对Helloworld这一词汇记忆深...
    99+
    2023-06-17
  • Linux下使用Shell脚本实现进程监控的流程
    本文介绍一种在Linux系统下为实现某些关键进程状态的实时监控而使用shell脚本的编写方法。在这里主要通过监控某些进程是否退出作为判断依据,如果某个进程退出了,则进行对应的恢复处理...
    99+
    2023-02-27
    Shell脚本进程监控 Linux使用Shell脚本进程监控
  • python实现最简单的进度条
    python实现最简单的进度条import sys,time total = 100 for i in range(total):     a = "#" * i + " " * (100-i) + "["+str(i) + "%"+"]"...
    99+
    2023-01-31
    最简单 进度条 python
  • Python多进程同步简单实现代码
    本文讲述了Python多进程同步简单实现代码。分享给大家供大家参考,具体如下: #encoding=utf8 from multiprocessing import Process, Lock def ...
    99+
    2022-06-04
    进程 代码 简单
  • python 进程池pool简单实例
    进程池:      在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间。当被操作对象数目不大时,可以直接利用multiprocessing中的Process动态成生多个进程,十...
    99+
    2023-01-31
    实例 进程 简单
  • Linux下如何使用Shell脚本实现进程监控的流程
    这篇“Linux下如何使用Shell脚本实现进程监控的流程”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux下如何使用...
    99+
    2023-07-05
  • linux 下实现sleep详解及简单实例
    linux 下实现sleep详解及简单实例 sleep: 普通版本 1、基本设计思路: 1>注册SIGALRM信号的处理函数; 2>调用alarm(nsecs)设定闹钟; 3...
    99+
    2022-06-04
    详解 实例 简单
  • python 多线程简单实现
    1. 线程是什么?线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。2 为什么要用线程?a 单个线程可以在进程中独立运行c 并行操作,适用于C/S架构3 python怎么生成线程(将函数生...
    99+
    2023-01-31
    多线程 简单 python
  • Linux C线程池简单实现实例
    Linux C线程池 三个文件 1 tpool.h typedef struct tpool_work { void (*routine)(void *); void ...
    99+
    2022-06-04
    线程 实例 简单
  • Python实现简单的API
    代码实现 # coding:utf-8 import json from urlparse import parse_qs from wsgiref.simple_server import make_server # 定...
    99+
    2023-01-31
    简单 Python API
  • Python实现简单的猜单词
    本文实例为大家分享了Python实现简单猜单词的具体代码,供大家参考,具体内容如下 游戏说明: 由程序随机产生一个单词,打乱该单词字母的排列顺序,玩家猜测原来的单词。 游戏关键点: 如何产生一个单词? 如何打乱单词字...
    99+
    2022-06-02
    python 猜单词
  • python 简单搭建阻塞式单进程,多进程,多线程服务的实例
    我们可以通过这样子的方式去理解apache的工作原理 1 单进程TCP服务(堵塞式) 这是最原始的服务,也就是说只能处理个客户端的连接,等当前客户端关闭后,才能处理下个客户端,是属于阻塞式等待 fro...
    99+
    2022-06-04
    进程 多线程 实例
  • python实现简单的聊天小程序
    概要 这是一个使用python实现一个简单的聊天室的功能,里面包含群聊,私聊两种聊天方式.实现的方式是使用套接字编程的一个使用TCP协议 c/s结构的聊天室 实现思路 x01 服务端的建立 首先,在服务端,使用soc...
    99+
    2022-06-02
    python 聊天 小程序
  • Python如何实现简单的GUI程序
    这篇文章主要介绍Python如何实现简单的GUI程序,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、记事本源码#python简易记事本from tkinter import *from...
    99+
    2023-06-29
  • 简单谈谈python中的多进程
    进程是由系统自己管理的。 1:最基本的写法 from multiprocessing import Pool def f(x): return x*x if __name__ == '__mai...
    99+
    2022-06-04
    进程 简单 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作