zoukankan      html  css  js  c++  java
  • awk处理文件内容格式

    今天运营出了点问题,需要对特定时间段充值数做一个处理,文件格式有特定要求,要符合erlang的格式
    {roleID,gold}.
    mysql导出所有数据
    结果如下【取部分数据看】:
    ===================================
    kuwo    4       50004106230500  100
    kuwo    4       50004106230900  10
    agent   server  role_id ****
    uu178   5       380005100002500 300
    agent   server  role_id ****
    uu178   6       380006100000600 200
    uu178   6       380006100110500 20
    agent   server  role_id ****
    yy365   1       860001100008000 2000
    yy365   1       860001100008100 1900

    ===================================
    首先去掉表头信息:
    cat log.txt | grep -v agent
    kuwo    4       50004104005100  50
    kuwo    4       50004104284100  1000
    kuwo    4       50004105824300  1000
    kuwo    4       50004106230500  100
    kuwo    4       50004106230900  10
    uu178   5       380005100002500 300
    uu178   6       380006100000600 200
    uu178   6       380006100110500 20
    yy365   1       860001100008000 2000
    yy365   1       860001100008100 1900
    ==============================
    去掉第一列每二列
    cat log.txt | grep -v agent | awk '{print $3,$4}'
    50004104005100 50
    50004104284100 1000
    50004105824300 1000
    50004106230500 100
    50004106230900 10
    380005100002500 300
    380006100000600 200
    380006100110500 20
    860001100008000 2000
    860001100008100 1900
    拼凑格式
    cat log.txt | grep -v agent | awk '{print $3,$4}'|  awk '{print "{"$1",",$2"}."}'
    {50004104005100, 50}.
    {50004104284100, 1000}.
    {50004105824300, 1000}.
    {50004106230500, 100}.
    {50004106230900, 10}.
    {380005100002500, 300}.
    {380006100000600, 200}.
    {380006100110500, 20}.
    {860001100008000, 2000}.
    {860001100008100, 1900}.
    ====================================
    大功告成,比用脚本去逐行生成文件快多了
    最后,整个过程可整理成一条管道命令
    cat log.txt | grep -v agent | awk '{print "{"$3",",$4"}."}' > newfile.txt
     




  • 相关阅读:
    Gym
    HDU 5876 Sparse Graph(补图中求最短路)
    HDU 5873 Football Games(竞赛图兰道定理)
    HDU 5877 Weak Pair(树状数组+dfs+离散化)
    HDU 5963 朋友(找规律博弈)
    HDU 5961 传递
    POJ 3252 Round Numbers(数位dp)
    HDU 4734 F(x) (数位dp)
    HDU 2089 不要62(数位dp模板题)
    HDU 5936 Difference(折半搜索(中途相遇法))
  • 原文地址:https://www.cnblogs.com/firmy/p/2707647.html
Copyright © 2011-2022 走看看