zoukankan      html  css  js  c++  java
  • python watchdog

    监视文件变更

    #!/usr/bin/python
    # -*- coding:UTF-8 -*-
    
    import time
    from watchdog.observers import Observer
    from watchdog.events import RegexMatchingEventHandler
    
    class MyHandler(RegexMatchingEventHandler):
    
        def __init__(self, regex_list=[r".*"]):
            super(MyHandler, self).__init__(regex_list)
    
        def on_created(self, event):
            if event.is_directory:
                pass
            else:
                print(event.event_type, event.src_path)
    
        def on_deleted(self, event):
            if event.is_directory:
                pass
            else:
                print(event.event_type, event.src_path)
    
        def on_modified(self, event):
            if event.is_directory:
                pass
            else:
                print(event.event_type, event.src_path)
    
        def on_moved(self, event):
            print("move", event.src_path, event.dest_path)
    
    if __name__ == "__main__":
        reges = [r".*.c", r".*.h", r".*.cpp"]
        event_handler = MyHandler(reges)
        observer = Observer()
        observer.schedule(event_handler, ".", recursive=True)
        observer.start()
    
        try:
            print("start my watch")
            while True:
                time.sleep(100)
        except KeyboardInterrupt:
            observer.stop()
        observer.join()
    

    读取配置文件

    # -*- coding: utf-8
    
    from configparser import ConfigParser
    
    def get_config(section_name="env", conf_file="ssh-config.ini"):
        '''
        :param section_name:
        :param conf_file:
        :return dictornary:
    
        eg.
        [env]
        user = root
        password = root123
    
        return {"user":"root", "password":"root123"}
        '''
        config = ConfigParser()
        config.read_file(open(conf_file))
        return dict(config.items(section_name))
    
    
    for k, v in get_config().items():
        print(k, ":", v)
    
  • 相关阅读:
    Linux网络基础配置
    UVA 116 Unidirectional TSP(dp + 数塔问题)
    修改Hosts文件
    倒排索引
    可以把阿里云上面的一些介绍和视频都看看
    练练脑,继续过Hard题目
    explicit的用法
    auto_ptr的使用和注意
    我写的快排程序
    快速排序、查第k大
  • 原文地址:https://www.cnblogs.com/wangshide/p/4594049.html
Copyright © 2011-2022 走看看