awk处理文件内容格式
生活随笔
收集整理的這篇文章主要介紹了
awk处理文件内容格式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天運營出了點問題,需要對特定時間段充值數做一個處理,文件格式有特定要求,要符合erlang的格式{roleID,gold}.mysql導出所有數據結果如下【取部分數據看】:===================================kuwo??? 4?????? 50004106230500? 100kuwo??? 4?????? 50004106230900? 10agent?? server? role_id ****uu178?? 5?????? 380005100002500 300agent?? server? role_id ****uu178?? 6?????? 380006100000600 200uu178?? 6?????? 380006100110500 20agent?? server? role_id ****yy365?? 1?????? 860001100008000 2000yy365?? 1?????? 860001100008100 1900。。。
===================================首先去掉表頭信息:cat log.txt | grep -v agent kuwo??? 4?????? 50004104005100? 50kuwo??? 4?????? 50004104284100? 1000kuwo??? 4?????? 50004105824300? 1000kuwo??? 4?????? 50004106230500? 100kuwo??? 4?????? 50004106230900? 10uu178?? 5?????? 380005100002500 300uu178?? 6?????? 380006100000600 200uu178?? 6?????? 380006100110500 20yy365?? 1?????? 860001100008000 2000yy365?? 1?????? 860001100008100 1900==============================去掉第一列每二列cat log.txt | grep -v agent | awk '{print $3,$4}'50004104005100 5050004104284100 100050004105824300 100050004106230500 10050004106230900 10380005100002500 300380006100000600 200380006100110500 20860001100008000 2000860001100008100 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
通過 為知筆記 發布
===================================首先去掉表頭信息:cat log.txt | grep -v agent kuwo??? 4?????? 50004104005100? 50kuwo??? 4?????? 50004104284100? 1000kuwo??? 4?????? 50004105824300? 1000kuwo??? 4?????? 50004106230500? 100kuwo??? 4?????? 50004106230900? 10uu178?? 5?????? 380005100002500 300uu178?? 6?????? 380006100000600 200uu178?? 6?????? 380006100110500 20yy365?? 1?????? 860001100008000 2000yy365?? 1?????? 860001100008100 1900==============================去掉第一列每二列cat log.txt | grep -v agent | awk '{print $3,$4}'50004104005100 5050004104284100 100050004105824300 100050004106230500 10050004106230900 10380005100002500 300380006100000600 200380006100110500 20860001100008000 2000860001100008100 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
通過 為知筆記 發布
轉載于:https://www.cnblogs.com/firmy/archive/2012/09/28/2707647.html
總結
以上是生活随笔為你收集整理的awk处理文件内容格式的全部內容,希望文章能夠幫你解決所遇到的問題。