linux下处理数据经典例子

1.使用sort命令进行文本内容字段分割排序

场景:有如下数据文件CreativeTemplateJobFilePath.log,文件内容如下

/home/static/data/creative_files/408/8782/1/20150313102029/media.html
/home/static/data/creative_files/408/8787/1/20150313102048/media.html
/home/static/data/creative_files/408/8785/1/20150313102039/media.html
/home/static/data/creative_files/408/8851/1/20150313103212/media.html
/home/static/data/creative_files/408/8783/1/20150313102034/media.html
/home/static/data/creative_files/408/8790/1/20150313102102/media.html
/home/static/data/creative_files/408/8786/1/20150313102044/media.html
/home/static/data/creative_files/408/8789/1/20150313102058/media.html

需求是按照20150313102029时间戳降序排列

cat CreativeTemplateJobFilePath.log | sort -t  '/' -k 9 -r > creative_path_sort.txt

可以查看sort命令的具体参数:

[root@www ~]# sort [-fbMnrtuk] [file or stdin]
选项与参数:
-f  :忽略大小写的差异,例如 A 与 a 视为编码相同;
-b  :忽略最前面的空格符部分;
-M  :以月份的名字来排序,例如 JAN, DEC 等等的排序方法;
-n  :使用『纯数字』进行排序(默认是以文字型态来排序的);
-r  :反向排序;
-u  :就是 uniq ,相同的数据中,仅出现一行代表;
-t  :分隔符,默认是用 [tab] 键来分隔;
-k  :以那个区间 (field) 来进行排序的意思

2.使用awk对例子1中的数据进行排序

cat CreativeTemplateJobFilePath.log|awk -F '/' '{print $9}'|sort -r

该方法只能输出时间戳,估计得使用awk的交集方式输出排序后的整体文件内容


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值