Python 执行tail文件并操作

def log_search(self, logfile, search_content, timeout=10):
        import time
        import subprocess
        import select
        import signal
        import os

        f = subprocess.Popen([‘tail‘, ‘-F‘, logfile], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        p = select.poll()
        p.register(f.stdout)

        try:
            while timeout>0:
                if p.poll(500):   # millisecond timeout
                    while True:
                        line = f.stdout.readline()
                        if line:
                            if search_content in line:
                                return True
                        else:  # no content read out
                            break
                time.sleep(1)
                timeout -= 1
            else:
                return False
        finally:
            print(‘unregister‘)
            p.unregister(f.stdout)
            print(‘kill pid‘)
            os.kill(f.pid, signal.SIGKILL)

原文地址:https://www.cnblogs.com/cedrelaliu/p/11714017.html

时间: 2024-11-05 22:01:15

Python 执行tail文件并操作的相关文章

python中关于文件的操作

今天让我们来一起学习一下python中关于文件的操作吧: 先看看以下如果打开文件: #open()打开文件的方法:r参数只能以读的方式打开文件,不能写 =(,,=)data=.read()(data)

Python OS简单文件/目录操作

Python OS简单文件/目录操作 Python的OS模块提供了丰富的文件和目录处理方法,这里指列举其中几个 参数不完全列举 删除.新建等操作 os.mkdir(path):在工作目录下创建一个名为path的文件夹 os.remove(path):删除路径为path的文件,如果不存在文件或者是一个文件夹则会抛出OSError os.rmdir(path):删除名为path的空文件夹,如果文件夹非空则会抛出OSError os.removedirs(path):递归删除文件夹 os.rename

python(三)一个文件读写操作的小程序

我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1.txt xiaoBing_1.txt xiaoNa_2.txt xiaoBing_2.txt 这样格式的四个文件 下面上代码: #定义一个保存文件的函数 def save_file(xiaoNa,xiaoBing,count): file_name_xiaoBing = 'xiaoBing_'+str(cou

python学习8 文件的操作

本文拷贝了on testing 的<python之文件操作:文件的读写>,只做学习之用 python的文件读写通过 一.用open函数 二.对文件读写操作 三.读取文件位置定位 1. open函数open(file_name[,access_mode][,buffering]) (1)参数说明 open(file_name[,access_mode][,buffering])      打开文件,获得文件的句柄 file_name:包含文件路径的字符串,可以是绝对路径也可以是相对路径,尽量使用

Python常用的文件读写操作和字符串操作

文件读写操作 fileUtils.py # -*- coding: utf-8 -*- import os def getFileList(dir, fileList=[]):     """     遍历一个目录,输出所有文件名     param dir: 待遍历的文件夹     param filrList : 保存文件名的列表     return fileList: 文件名列表     """     newDir = dir     

Python基础之文件的操作

#文件的操作 #创建文件fc=open("E:/新建文件夹/a.mp8","w")#参数1表示文件路径以及名称,参数2表示文件的操作方法fc=file("E:/新建文件夹/a.mp9","w") #打开文件 fo=open("E:/新建文件夹/a.mp9","w")#若没有此文件open表示创建并打开fo=file("E:/新建文件夹/a.mp9","w&q

python元组,文件的操作

新手刚刚开始学习python,如有写错或者写的不好的地方,请大家多多指导!python元组相加a = (1,2)b = (3,4)a + b元组运用乘法(1,2) * 4  #在这里边,元组不会被当成数字来计算,而是输出4次给字母类型的元组拍t = ('bb,','dd','aa','cc')tm = list(t)tm.sort()    #然后输出tmt = tuple(tm)用for的方式运算t = (1,2,3,4,5)l = [x + 20 for x in t]替换元组t = (1,

python 执行matlab文件

环境:matlab2014b,mac os,python 2.7 1. windows用户可以用win32com,COM只适用于WINDOWS系统,这里没有尝试. 2. 如果是执行简单的命令,可以用matlab2014b提供的引擎,我的在/Applications/MATLAB_R2014b.app/extern/engines/python. ###Matlab Engine for Python#Call Matlab Function from Python ---------------

python中对文件的操作

打开文件方式流程: 打开-----编辑------关闭   大象如何放入冰箱,不要管多大,怎么放,有可能冰箱很大,大象很小,直接打开冰箱,放入冰箱,关闭冰箱,哈哈,程序中方式如下: 以后用f操作文件即可.关闭文件: a在python里代表追加,相当于linux里的>> rb wb ab代表都是二进制文件  txt py文本文件不用加b. r+ 可可以,但文件不存在它就不会做任何处理. w+ 可读写,如文件不存在创建,若在则将其覆盖. a+ 可读写,如文件不在会创建,若在则在其结尾追加. f.r