免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1098 | 回复: 0

[文本处理] 如何实现这个需求中的按列倒叙拼接数据? [复制链接]

论坛徽章:
0
发表于 2016-10-31 16:11 |显示全部楼层
  1. #!/bin/bash

  2. #pc:站点id
  3. pc_id=(209 773 1139 210 213 214 1234 1133 1973 838)

  4. #touch:站点id
  5. touch_id=(1243 1280 1335 1245 1247 1244 1248 1249 1974 1246)

  6. #pc站点id与touch站点id的关联关系
  7. declare -A pc_id_to_touch_id
  8. pc_id_to_touch_id=([209]=1243 [773]=1280 [1139]=1335 [210]=1245 [213]=1247 [214]=1244 [1234]=1248 [1133]=1249 [1973]=1974 [838]=1246)

  9. #pc:站点id转中文名称
  10. declare -A pc_id_to_name

  11. pc_id_to_name=([209]=pc国内机票 [773]=pc国际机票 [1139]=pc国内游 [210]=pc景点门票 [213]=pc出境 [214]=pc酒店 [1234]=pc邮轮 [1133]=pc火车票 [1973]=pc汽车票 [838]=pc周边游)

  12. #touch:站点名称转id
  13. declare -A touch_id_to_name
  14. touch_id_to_name=([1243]=touch国内机票 [1280]=touch国际机票 [1335]=touch国内游 [1245]=touch景点门票 [1247]=touch出境 [1244]=touch酒店 [1248]=touch邮轮 [1249]=touch火车票 [1974]=touch汽车票 [1246]=touch周边游)

  15. for i in ${pc_id[@]}
  16.         do
  17.                 pc_site_id="${i}"
  18.                 pc_site_name="${pc_id_to_name[${i}]}"
  19.                
  20.                 touch_site_id="${pc_id_to_touch_id[${pc_site_id}]}"
  21.                 touch_site_name="${touch_id_to_name[${touch_site_id}]}"
  22.                
  23.                 #获取PC数据
  24.                 pc_source=$(curl -s "http://三个w.some.ee/tmp/pc/"${pc_site_id}".html")
  25.                
  26.                 #获取touch数据
  27.                 touch_source=$(curl -s "http://三个w.some.ee/tmp/touch/"${touch_site_id}".html")

  28.                 date=$(echo "${pc_source}"|grep -Po '(?<=":").*?(?=",")')
  29.                 pc_uv=$(echo "${pc_source}"|grep -Po '(?<="UV":)[0-9]+?(?=})')
  30.                 touch_uv=$(echo "${touch_source}"|grep -Po '(?<="UV":)[0-9]+?(?=})')
  31.                
  32.                 pc_result=$(paste -d'        ' <(echo "$date") <(echo "$pc_uv"))
  33.                 touch_result=$(paste -d'        ' <(echo "$pc_result") <(echo "$touch_uv"))
  34.                
  35. done
复制代码
目的:统计每天的流量,并放到result.txt里面,按照日期由近到远来按行存储。

数据是能够获取到的,但是我不知道怎么保存,我想保存为这样的格式:第一行固定为日期、pc站点名称、touch站点名称第二行开始,是每天的数据,按照日期来排列,最新的放在最上面。

curl获取地址的数据,可以按照天来获取,未来我就是想,我给的网址是我自己搞的演示数据。


QQ截图20161031151043.png

可能遇到的问题:未来增加站点id的时候,要在文件中的右侧依次添加新的列。

囧。。。
问题看起来好复杂的样子。。。
不知道如何实现,求帮助啊。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP