1. 程式人生 > >kernel log time 轉換為對應的年月日時分秒

kernel log time 轉換為對應的年月日時分秒

color exce main line datetime == path except write

import time
import datetime
import sys
import getopt
import os
#需要加入 [  691.165602] android time 2017-06-19 17:47:59.765338  
#06-19 17:47:59.765338 [  691.165602] android time 2017-06-19 17:47:59.765338 
a_time = None
s_second = None
s_microsecone = None
abs_time = 0.0
inputfile = None
outputfile = None
 
def usage(): print(‘‘‘Help Information: -h, --help: Show help information -i, --inputfile: input file to parse -o, --outputfile: output fiel parsed ‘‘‘) def calc_delta(stream): global s_second global s_microsecond
global a_time global outfile begin_index = None end_index = None delta_second = 0 delta_mircosecond = 0 delta_time = 0 d_time = None new_line = None if a_time ==None: print("Can‘t convert to android time") exit(-1) for line in stream: if line:
try: begin_index = line.index([) end_index = line[begin_index+1:].index(])+begin_index+1 time_string = line[begin_index + 1 :end_index] [d_second,d_microsecond] = time_string.split(.) delta_second = int(int(d_second) - int(s_second)) delta_microsecond = int(int(d_microsecond)-int(s_microsecond)) delta_time = datetime.timedelta(seconds=delta_second,microseconds=delta_microsecond) d_time = a_time + delta_time new_line = d_time.strftime("%m-%d %H:%M:%S.%f")+ + line outputfile.write(new_line) except: outputfile.write(line) def get_atime(stream): global s_second global s_microsecond global a_time a_time_op = None begin_index = None end_index = None for line in stream: if line: a_time_op = line.find(android time) if a_time_op>=1: begin_index = line.index([) end_index = line[begin_index+1:].index(])+begin_index+1 date_string = line[a_time_op+13:].strip() abs_time = line[begin_index + 1 :end_index] [s_second,s_microsecond] = abs_time.split(.) a_time = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S.%f") break def main(argv): global inputfile global outputfile inputpath = None outputpath = None try: opts, args = getopt.getopt(argv,"hi:o:",["help","inputfile=","outputfile="]) except getopt.GetoptError: usage() sys.exit(2) for opt, arg in opts: if opt in ("-h", "--help"): usage() sys.exit() if opt in ("-i", "--inputfile"): inputpath = arg if opt in ("-o", "outputfile"): outputpath = arg if inputpath == None: usage() sys.exit() if outputpath == None: outputpath = os.getcwd()+"/out.txt" inputfile = open(inputpath, r) outputfile = open(outputpath, w) get_atime(inputfile) inputfile.seek(0) calc_delta(inputfile) inputfile.close() outputfile.close() if __name__ == "__main__": main(sys.argv[1:])

kernel log time 轉換為對應的年月日時分秒