当存在大量数据的时候,通常很难处理这些信息及提取有用信息。Linux提供了一系列的命令行工具来处理这些数据。

1.排序数据

Linux:/usr/local/sbin # cat file2

1

0.3

2015

100

290

10

Linux:/usr/local/sbin # sort file2

0.3

1

10

100

2015

290

Linux:/usr/local/sbin #

从上述情况来看,sort并没有对数字进行进行排序,是由于在默认情况下,sort命令会把数字当做字符来执行标准的字符排序。如果需要当做数字排序,需要添加参数n

Linux:/usr/local/sbin # sort -n file2

0.3

1

10

100

290

2015

1.1 sort命令参数

-d   排序时忽略起始空白

-C   不排序,如果数据无序也不要报告

-c   不排序,但检查输入的数据是否已排序,未排序的话,报告

-d   仅考虑空白和字母,不考虑特殊字符

-f   默认情况下,会将大写字母排在前面,这个参数会忽略大小写

-g   按通用数值来排序

-i   在排序时忽略不可打印字符

-k   排序从POS1位置开始,如果指定了POS2的话,到POS2结束

-M   用三字符月份名按月份排序

-m   将两个已排序数据文件合并

-n   按字符串数值来排序

-o   将排序结果写到指定的文件中

-R   按随机生成的散列表的键值排序

-r   反序排序

-S   指定内存的大小

-s   禁用最后重排序比较

-T   指定一个位置来存储临时文件夹

-t   指定一个用来区分键位置的字符

-u   和-c参数一起使用,检查严格排序

-z   用NULL字符作为行尾,而不是用换行符

1.2 案例

Linux:/usr/local/sbin # du -sh * | sort -nr

4.0K    third.sh

4.0K    test2.sh

4.0K    test1.sh

4.0K    sum.sh

4.0K    second.sh

4.0K    param_v.sh

4.0K    out1.txt

4.0K    out.txt

4.0K    input_param_sum.sh

4.0K    first.sh

4.0K    file2

4.0K    file1

0    test_two

0    test_one

2.查找数据

2.1 grep进行搜索

Linux:/usr/local/sbin # cat file1

one

two

three

four

five

six

Linux:/usr/local/sbin # grep three file1

three

如果需要反向搜索,添加-v参数即可(输出不匹配该模式的行)

Linux:/usr/local/sbin # grep -v three file1

one

two

four

five

six

显示匹配模式所在行号 -n参数

Linux:/usr/local/sbin # grep -n three file1

3:three

只显示被匹配到的行的数量

Linux:/usr/local/sbin # grep -c three file1

1

指定多个匹配模式

Linux:/usr/local/sbin # grep -e three -e two file1

two

three

【Linux】处理数据文件的更多相关文章

  1. linux删除数据文件无备份恢复

    参考 : http://www.lunar2013.com/2013/06/linux-%E8%AF%AF%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%E6%81%A2%E ...

  2. Linux/UNIX数据文件和信息系统

    数据文件和信息系统 密码文件 在存储/etc/passwd在.以下功能可以用来获得密码文件条目. #include <sys/types.h> #include <pwd.h> ...

  3. ORA-01578 data block corrupted 数据文件损坏 与 修复 (多为借鉴 linux)

    好吧,先说说造成崩溃的原因: 使用redhat 5.9 Linux 作为数据库服务器, 周五数据库正在使用中,硬关机造成数据库文件部分损坏(周一上班时,应用程序启动不起来,查看日志文件时,发现一个数据 ...

  4. [工作相关] GS产品使用LInux下Oracle数据库以及ASM存储时的数据文件路径写法.

    1. 自从公司的GS5版本就已经支持Linux下的oracle数据库通过安装工具自动安装注册了, 只不过路径需要使用linux的命名规则, 如图: /home/oracle/ 注意 最后是有一个 斜线 ...

  5. 自学Linux Shell4.3-处理数据文件sort grep gzip tar

    点击返回 自学Linux命令行与Shell脚本之路 4.3-处理数据文件sort grep gzip tar ls命令用于显示文件目录列表,和Windows系统下DOS命令dir类似.当执行ls命令时 ...

  6. linux下误删数据文件恢复

    linux下文件被删除能够用非常多工具进行恢复.比如undelete(适合ext2,ext3).giis(不能恢复安装giis之前的文件).ext3grep(仅限ext3).R-linux(支持ext ...

  7. Linux下修改MySQL数据库数据文件路径

    使用rpm安装方式安装完MySQL数据库后,数据文件的默认路径为/var/lib/mysql,然而根目录并不适合用于存储数据文件. 原路径:/var/lib/mysql 目标路径:/home/mysq ...

  8. Linux下MySQL的数据文件存放位置

    http://bbs.csdn.net/topics/390620630mysql> show variables like '%dir%';+------------------------- ...

  9. Linux环境下利用句柄恢复Oracle误删除的数据文件

    在误删除Oracle的数据文件后,如果未关闭数据库,文件句柄还没有释放,且被删除的数据文件占用的磁盘块未被复写,则可以利用句柄的方式来恢复数据文件.下面模拟恢复过程. (一)环境 OS版本:redha ...

随机推荐

  1. Pandas删除数据的几种情况

    开始之前,pandas中DataFrame删除对象可能存在几种情况 1.删除具体列 2.删除具体行 3.删除包含某些数值的行或者列 4.删除包含某些字符.文字的行或者列 本文就针对这四种情况探讨一下如 ...

  2. Asp.Net Core MVC控制器和视图之间传值

    一.Core MVC中控制器和视图之间传值方式和Asp.Net中非常类似 1.弱类型数据:ViewData,ViewBag 2.强类型数据:@model 二.代码 实例  1.ViewData pub ...

  3. .NetCore中EFCore for MySql整理(二)

    一.简介 EF Core for MySql的官方版本MySql.Data.EntityFrameworkCore 目前正是版已经可用当前版本v6.10,对于以前的预览版参考:http://www.c ...

  4. Asp.Net Core 视图整理(一)

    一.部分视图的使用 注:1.目前在Asp.Net Core2.0中对于部分视图的支持主要使用 Html.Partial()/Html.PartialAsync(); Html.RenderPartia ...

  5. php定时回调接口

    http://www.dewen.org/search/q/php%E5%AE%9A%E6%97%B6%E8%B0%83%E7%94%A8%E5%AD%98%E5%82%A8%E8%BF%87%E7% ...

  6. wim2008 让FTP防火墙可用性配置

    转: Win2003和Win2008防火墙导致FTP服务器不能访问的解决方法 这篇文章主要介绍了Win2003和Win2008防火墙导致FTP服务器不能访问的解决方法,需要的朋友可以参考下 由于通过远 ...

  7. 小游戏:HelloColor

    这是我写的第一个游戏.模仿一款手机游戏"颜色运行"写的.大概花了一天的时间完成,挺简单的. 游戏名:HelloColor,翻译成中文是:你好色 按空格键开始和暂停开始游戏后,界面右 ...

  8. 【算法】Java-Redis-Hash算法对比-参考资料

    Java-Redis-Hash算法对比-参考资料 redis java map 红黑树_百度搜索 java使用redis缓存(String,bean,list,map) - CSDN博客 redis ...

  9. tf.contrib.rnn.static_rnn与tf.nn.dynamic_rnn区别

    tf.contrib.rnn.static_rnn与tf.nn.dynamic_rnn区别 https://blog.csdn.net/u014365862/article/details/78238 ...

  10. iOS的settings bundle中开关button(Toggle Switch)取不到值的问题

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 假设认为写的不好请多提意见,假设认为不错请多多支持点赞.谢谢! hopy ;) 在Xcode7.2中设置App的settings bundle ...