linux的搜索命令以及批量请求放入excel

想要查找linux里面日志中的某个字段怎么找呢?

grep shenyue $log | awk '{print $17}' $log

$log代表日志的路径,找到神月的日志并且找到某个字段。

 

# Author: guocheng@daixiaomi.com
# Date:2018/12/24
# coding=utf8
from lambda_platform.functions_platform.base_function_node import BaseFunctionNode
import datetime
import json

class FunctionNode(BaseFunctionNode):
def init(self):
self.params_check_list = ['phone']

def handler(self, **kwargs):
phone = kwargs['phone']


# user_reg_info
status2, ret2 = self.function_maxwell('RegisterInfo_By_Phone',params=dict(phone=phone, platform=['0']))

#user_name_info
status3, ret3 = self.function_maxwell('OtherAccountInfo_By_Phone', params=dict(phone=phone))


ord = ret['1'][1][0]
reg = ret2['0'][1]
account = ret3


origin_dict = {}
origin_dict["loadnId"] = ord['application_id']
origin_dict["originalLoanId"] = ord['application_id']
origin_dict["name"] = account['name'].decode("utf8")
origin_dict["pid"] = ord['identity']
origin_dict["mobile"] = ord['phone']
origin_dict["loantype"] = ord['product']
origin_dict["accountOpenDate"] = reg['register_time']
origin_dict["applydate"] = ord['created_time']
origin_dict["issueDate"] = ord['loan_special_time']
origin_dict["loanAmount"] = ord['loan_amount']
origin_dict["totalTerm"] = ord['periods']
origin_dict["targetRepayDateType"] = 1
origin_dict["termPeriod"] = 30
origin_dict["targetRepayDateList"] = "None"

tss = origin_dict["issueDate"]
timeArray = datetime.datetime.strptime(tss, "%Y-%m-%d %H:%M:%S")
first_time = timeArray + datetime.timedelta(30)
#在这里意思是将那个日期加上30天后,得出的时间 origin_dict[
"firstRepaymentDate"] = str(first_time) return True, {'order_status': "", 'order_info': origin_dict}

将接口启动后,我们就可以进行用requests去请求接口。

将拿到的数据放入到excel表格中。

# -*- coding: utf-8 -*-
# 导入xlwt模块
import xlwt

#! /usr/bin/env python
# -*- coding:utf-8 -*-
# Author: guocheng@daixiaomi.com
# Date:2018/12/25
import requests
import json

s=[
u'15147741681', u'15914965132', u'15113771727', ] url='http://192.168.6.94:10259/test/'

#创建excel对象 book = xlwt.Workbook(encoding='utf-8', style_compression=0) #添加sheet sheet = book.add_sheet('test', cell_overwrite_ok=True)

n=0
for i in s: payload={ "phone":i, "app":"app", "api_key":1234567, "virtual_data_type":"lbd__shenyue_order_history" } res=requests.get(url,params=payload) json_data=json.loads(res.content) print(json_data) # ============================================================== try:
     # 往excel表格里写入数据 sheet.write(n, 0, json_data[
'result_dict']['order_info']['loadnId']) sheet.write(n, 1, json_data['result_dict']['order_info']['originalLoanId']) sheet.write(n, 2, json_data['result_dict']['order_info']['name']) sheet.write(n, 3, json_data['result_dict']['order_info']['pid']) sheet.write(n, 4, json_data['result_dict']['order_info']['mobile']) sheet.write(n, 5, json_data['result_dict']['order_info']['loantype']) sheet.write(n, 6, json_data['result_dict']['order_info']['accountOpenDate']) sheet.write(n, 7, json_data['result_dict']['order_info']['applydate']) sheet.write(n, 8, json_data['result_dict']['order_info']['issueDate']) sheet.write(n, 9, json_data['result_dict']['order_info']['loanAmount']) sheet.write(n, 10, json_data['result_dict']['order_info']['totalTerm']) sheet.write(n, 11, json_data['result_dict']['order_info']['targetRepayDateType']) sheet.write(n, 12, json_data['result_dict']['order_info']['termPeriod']) sheet.write(n, 13, json_data['result_dict']['order_info']['targetRepayDateList']) sheet.write(n, 15, json_data['result_dict']['order_info']['firstRepaymentDate']) except Exception as e: pass n+=1 book.save(r'd:\test1.xls') # 在字符串前加r,声明为raw字符串,这样就不会处理其中的转义了。否则,可能会报错

 继续添加搜索命令

 grep -C10  "ProfileChangeLog_By_Userid" $log  

表示查找相关的日志,-C10表示打印上下5行,$log为路径

 

第二个命令是切割命令

如图所示的一个

 

grep b= ym|awk -F "b=" '{print $2}' 

搜索日志中b=的存在 然后将b=后面的手机号打印出来,

grep b= ym|awk -F "b=" '{print $2}'  > ym.txt

表示将打印出来的写入一个新的文件

posted @ 2018-12-25 16:48  G先生  阅读(565)  评论(0)    收藏  举报

:guocheng