问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何使用python脚本实现对windows系统监控

发布网友 发布时间:2022-04-30 02:51

我来回答

1个回答

热心网友 时间:2022-04-18 06:56

示例:

#!/usr/bin/env python
# encoding: utf-8

"""
MonitorLog.py

Usage: MonitorLog.py ...
Monitor the log file

-f  log file
-h  help info

python MonitorLog.py -f C:\monitor.log

Created by zhoubo on 2011-08-29.
"""

import sys
import os
import getopt
import subprocess
import time
import codecs
import winsound

ABSPATH = os.path.dirname(os.path.abspath(__file__))
MONITERCONF = 'moniter_keyword.txt' #utf8 file

def main():
    try:
        opts, args = getopt.getopt(sys.argv[1:], 'hf:')
    except getopt.GetoptError, err:
        print str(err)
        print __doc__
        return 1

    path = ''
    for k, v in opts:
        if k == '-f':
            path = v
        elif k == '-h':
            print __doc__
            return 0

    if not (path and os.path.exists(path)):
        print 'Invalid path: %s' % path 
        print __doc__
        return 2

    #命令行元组
    cmd = ('tail', '-f', path)
    print ' '.join(cmd)
    output = subprocess.Popen(cmd, stdout=subprocess.PIPE)

    keywordMap = {}
    #加载监控的关键字信息
    with codecs.open(os.path.join(ABSPATH, MONITERCONF), 'r', 'utf8') as f:
        lines = f.readlines()
    for line in lines:
        line = line.strip()
        if not line:
            continue
        keyword, wav = line.strip().split(':')
        keywordMap[keyword] = wav

    while True:
        line = output.stdout.readline()
        #process code,得到输出信息后的处理代码
        if not line:
            time.sleep(0.01)
            continue
        line = line.strip().decode('utf8')
        print line
        for keyword in keywordMap:
            if line.find(keyword) > -1:
                winsound.PlaySound(keywordMap[keyword], 
                                   winsound.SND_NODEFAULT)
        #time.sleep(0.01)
    return 0

if __name__ == '__main__':
    sys.exit(main())

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 怎么在windows下运行python脚本 ...在windows下开发python:在cmd下运行python脚本+如何使用 怎样使python写的脚本在windows下任何地方执行 我的实名认证的被盗了,实名认证了但是没有绑定银行卡坏人可以用我的贷款吗 SQL语句中各个连接的用法和区别??? 我的实名认证的被盗了,实名认证了但是没有绑定银行卡坏人可以用我的贷款吗? 微信被盗,密码也被改了,但我进行了实名,虽然没有绑定任何卡,但别人会用我的进行贷款吗? 微信被盗,密码也被改了,但我进行了实名,虽然没有绑定任何卡,但别人会用我的进行贷款吗? 我的实名认证的被盗了,实名认证了但是没有绑定银行卡坏人可以用我的贷款吗? 微信被盗,密码也被改了,但我进行了实名,但也没有绑定任何卡,别人会用我的进行贷款吗? 被盗会被别人给去贷款什么吗?怎么办? 大叶绿萝长高了,可是下面杆部有很长一截没有叶子怎么办? 怎样快速的把360云盘里的视频文件下载到本地硬盘里?》 360云盘备份的视频怎么才能下到手机上 360云盘能存视频吗,怎么存 我的米8怎么点都点不开系统更新,解了bl锁,买的二手的 怎么将网页与数据库连到一起? 网站和数据库怎么连接 徐忆彤这个名字能得多少分 徐亦彤这个名字的意义怎么解释? 记忆海绵枕头的枕芯误用水洗了,如何将枕芯弄干? 海绵枕头能用洗衣机甩干吗 河南自考申请毕业证什么时候可以发 河南自考毕业证领取时间 请问有没有人知道河南省自考本科毕业证何时能去拿?我已经申请过了,现在能去领吗?能代领吗? 河南自考毕业证书的办理时间 小米手机邮箱设置,邮箱的信息如附件,大家帮我看看怎么设置,我尝试了无数次,都连接不了服务器。 如何取消小米自动下载QQ邮箱附件的设置? 河南科技大学自考毕业证怎么领? ...时验证过的一台电脑,为什么过一段时间又需要验证? 河南自考毕业证具体申请时间 手机取消了设备锁之后为什么电脑登录还要验证? 2012年6月份河南郑州金水区自考办自考本科毕业证申请及领取时间???具体几号啊??? 请问河南省自考毕业证的办理的具体时间是什麼时候 ...你已设置手机设备锁,登陆QQ需要验证手机。什么情况? 自考本科毕业证什么时候可以拿到? 脸部下垂怎样提升和紧致皮肤 ? 因为别的男人乱摸你而感到对不起男朋友的说说 让女朋友感到对男朋友愧疚的说说 刚刚和男朋友分手了,该怎么写个说说,表达我对不起他?