多行数据按照中间某个值(时间)进行排序

2015/12/20 Linux,VIM

问题描述

拿到一份数据,想要按照时间顺序观察操作路径,但是里面的时间信息是乱的,如下图所示:

但是只有按照时间顺序看才有意义,想到Linux处理数据比较强大,决定用Linux试一下,那么问题来了,我平时都是在windows上工作的,我怎样才能在Linux上处理数据呢。

解决方案

请教了小朋友,发现,其实我经常登录Linux服务器,只是自己没有意识到。而且,前两天刚刚申请了Linux虚机,现在派上用场了

  1. 用winscp登录自己的虚拟,将要准备处理的文件拖到/search/test目录下
  2. 使用putty登录虚机
  3. 进入目标路径 cd /search/test
  4. 输入命令ls -l 嗯~能看到我放的文件,再使用cat命令读取文件,嗯~可以读取。问题又来了,Linux下怎么对文件进行排序呢?经过百度,发现,Linux下有个强大的sort命令:
  • sort -n :以数值进行排序,避免出现10比2大的情况
  • sort -k 2:对第二列进行升序的排序
  • sort -t [:以[作为分隔符
  1. sort -n -k 2 -t [ test 注:文件名叫test

  2. 结果如下:

后续发展

本来以为自己挺厉害的,把自己方法分享给朋友的时候,却被两个人都喷了,两个人分别提供了自己的方法,确实可用,记录一下供自己后续学习

A方案

  1. 使用vim打开数据使用sort命令

不错,我要吐血了

B方案

  1. 使用excel打开数据(或者将数据复制到excel里面)
  2. 在/处进行分列(数据 > 分列 > 分隔符)
  3. 排序

也不错,血已经吐完了

Search

    Post Directory