亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
123下一頁
最近訪問板塊 發(fā)新帖
查看: 7110 | 回復: 20
打印 上一主題 下一主題

[文本處理] 一段文本處理,幫忙(已解決) [復制鏈接]

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2013-08-14 21:25 |只看該作者 |倒序瀏覽
本帖最后由 volwang 于 2013-08-17 06:34 編輯

一段文本如下:
希望得到的結(jié)果是:


in 和 out 一般會隨機出現(xiàn),需要匹配apples數(shù)和who
有一個in出現(xiàn)就一定有out,這是一一對應的。
懇請大俠幫忙,特求助

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
2 [報告]
發(fā)表于 2013-08-14 22:07 |只看該作者
@volwang
  1. $ awk -F'["() ]+' '!/IN|OUT/{a[$2]=$4;next}/OUT/{b[$5" "2]=a[$2]"/"$1}/IN/{b[$5" "3]=a[$2]"/"$1}{c[$5];b[$5" "1]=$4;b[$5" "4]=$5;b[$5" "5]=$6}END{for(i in c){for(j=1;j<=5;j++)printf b[i" "j]" ";print ""}}' file
  2. ASD_FILE 7/26/2013/8:21:35 7/26/2013/8:48:11 dhrvo_12459708425 20
  3. EFG_FILE 7/26/2013/8:53:44 7/26/2013/9:20:42 dhr_12459708425 20
  4. EFG_FILE 7/26/2013/9:50:33 7/27/2013/11:25:08 cdef_WTh790120 30
復制代碼

論壇徽章:
1
天蝎座
日期:2013-08-22 15:14:44
3 [報告]
發(fā)表于 2013-08-15 09:00 |只看該作者
awk -F'[ ()"]' '/STEPTIME/{day[$3]=$6}/OUT/{outtime[$9_$12]=day[$3]"/"$1}/IN/{if(outtime[$9_$12]) records[i++]=$7 OFS outtime[$9_$12] OFS day[$3]"/"$1 OFS $9 OFS $12} END{for(i in records) print records[i]}' test.log         

ASD_FILE 7/26/2013/8:21:35 7/26/2013/8:48:11 dhrvo_12459708425 20
EFG_FILE 7/26/2013/8:53:44 7/26/2013/9:20:42 dhr_12459708425 20                                                                                                                           
EFG_FILE 7/26/2013/9:50:33 7/27/2013/11:25:08 cdef_WTh790120 30

論壇徽章:
1
天蝎座
日期:2013-08-22 15:14:44
4 [報告]
發(fā)表于 2013-08-15 09:06 |只看該作者
awk -F'[ "()]+' '/STEPTIME/{day[$2]=$4}/OUT/{outtime[$5_$6]=day[$2]"/"$1}/IN/{if(outtime[$5_$6]) records[i++]=$4 OFS outtime[$5_$6] OFS day[$2]"/"$1 OFS $5 OFS $6} END{for(i in records) print records[i]}' test.log
ASD_FILE 7/26/2013/8:21:35 7/26/2013/8:48:11 dhrvo_12459708425 20
EFG_FILE 7/26/2013/8:53:44 7/26/2013/9:20:42 dhr_12459708425 20                                                                                                                           
EFG_FILE 7/26/2013/9:50:33 7/27/2013/11:25:08 cdef_WTh790120 30

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
5 [報告]
發(fā)表于 2013-08-15 15:14 |只看該作者
本帖最后由 volwang 于 2013-08-17 06:36 編輯

回復 2# cao627


謝謝你的回復。
實際上這樣的文本是按照時間日期依次遞增的。
文本內(nèi)容很多,我只是竊取了一部分
我覺得是不是這樣:
先找到out行,找到還有關(guān)鍵字,例如 時間,EFG_FILE  cdef_WTh790120  40 apples等。
在out行往上查找out出現(xiàn)的日期。
然后往下找和EFG_FILE  cdef_WTh790120  40 apples匹配的 in 所在的行,在找到in 行出現(xiàn)的時間。
在in往上查找到in 出現(xiàn)的日期。






   

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
6 [報告]
發(fā)表于 2013-08-15 19:00 |只看該作者
@volwang
之前寫的命令只考慮到每個“who”只out in一次,而且寫的也比較冗余。

如果每一對OUT / IN     OUT都出現(xiàn)在IN之前的話:
  1. $ awk -F'["() ]+' '!/IN|OUT/{a[$2]=$4;next}/OUT/{b[$5]=a[$2]"/"$1}/IN/{print $4" "b[$5]" "a[$2]"/"$1" "$5" "$6}' file
復制代碼

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
7 [報告]
發(fā)表于 2013-08-15 19:24 |只看該作者
in和out可能會交替出現(xiàn)。
out之后,一定匹配與之對應的in。


回復 6# cao627


   

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
8 [報告]
發(fā)表于 2013-08-15 19:52 |只看該作者
out之后,一定匹配與之對應的in

這樣的話6樓的代碼應該沒問題。
@volwang

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
9 [報告]
發(fā)表于 2013-08-15 20:13 |只看該作者
本帖最后由 volwang 于 2013-08-17 06:36 編輯

回復 8# cao627

我自己把文本修改的更加好處理一些了:
現(xiàn)在需要處理的腳本是:

   

論壇徽章:
6
摩羯座
日期:2013-08-24 10:43:10獅子座
日期:2013-08-25 10:27:06天秤座
日期:2013-09-11 20:28:44午馬
日期:2014-09-28 16:06:0015-16賽季CBA聯(lián)賽之八一
日期:2016-12-19 13:55:0515-16賽季CBA聯(lián)賽之天津
日期:2016-12-20 14:01:23
10 [報告]
發(fā)表于 2013-08-15 21:14 |只看該作者
本帖最后由 cao627 于 2013-08-15 21:25 編輯
  1. $ cat file1
  2. N: 7/25/2013 8:40:27 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  3. OUT: 7/25/2013 8:48:36 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  4. IN: 7/25/2013 8:53:58 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  5. OUT: 7/25/2013 8:58:06 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  6. OUT: 7/25/2013 9:01:37 "WDG_FILE" itjtm_WTH5400520  40
  7. OUT: 7/25/2013 9:01:55 "WDG_FILE" itjtm_WTH5400520  20
  8. OUT: 7/25/2013 9:02:14 "WDG_FILE" itjtm_WTH5400520  20
  9. IN: 7/25/2013 9:11:34 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  10. OUT: 7/25/2013 9:14:28 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  11. IN: 7/25/2013 9:41:07 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  12. OUT: 7/25/2013 10:18:09 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  13. IN: 7/25/2013 10:39:31 "WDG_FILE" itjtm_WTH5400520  20
  14. IN: 7/25/2013 10:39:31 "WDG_FILE" itjtm_WTH5400520  40
  15. IN: 7/25/2013 10:39:31 "WDG_FILE" itjtm_WTH5400520  20
  16. IN: 7/25/2013 10:44:35 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  17. OUT: 7/25/2013 10:56:38 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  18. IN: 7/25/2013 11:15:58 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  19. OUT: 7/25/2013 11:18:17 "WDG_FILE" fdhfdg_fefrgjrh790306  20
  20. OUT: 7/25/2013 11:34:47 "WDG_FILE" itjtm_WTH5400520  14
  21. IN: 7/25/2013 11:44:21 "WDG_FILE" fdhfdg_fefrgjrh790306  20

  22. awk -F'[" ]+' '/OUT/{a[$1$5$6]=$2"/"$3}/IN/{print $4" "a[$1$5$6]" "$2"/"$3"   "$5" "$6}' file1
  23. WDG_FILE  7/25/2013/8:53:58   fdhfdg_fefrgjrh790306 20
  24. WDG_FILE  7/25/2013/9:11:34   fdhfdg_fefrgjrh790306 20
  25. WDG_FILE  7/25/2013/9:41:07   fdhfdg_fefrgjrh790306 20
  26. WDG_FILE  7/25/2013/10:39:31   itjtm_WTH5400520 20
  27. WDG_FILE  7/25/2013/10:39:31   itjtm_WTH5400520 40
  28. WDG_FILE  7/25/2013/10:39:31   itjtm_WTH5400520 20
  29. WDG_FILE  7/25/2013/10:44:35   fdhfdg_fefrgjrh790306 20
  30. WDG_FILE  7/25/2013/11:15:58   fdhfdg_fefrgjrh790306 20
  31. WDG_FILE  7/25/2013/11:44:21   fdhfdg_fefrgjrh790306 20
復制代碼
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP