Linux中分析文本工具

一、收集文本统计数据wc

wc命令用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据,且不改变原始数据。

例如;

可以对文件或STDIN中的数据运行

$wcstory.txt

39   237   1901 story.txt

行数 字数  字符数

格式:cut [OPTION]… [FILE]…

选项:

使用-l来只计数行数

使用-w来只计数单词总数

使用-c来只计数字节总数

使用-m来只计数字符总数

ctrl –d 终止输入,把文本数据统计出来

二、文本排序sort

sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入,不改变原始文件。

格式:sort[options]file(s)

选项:

-r执行反方向(由上至下)整理

-n执行按数字大小整理

-f选项忽略(fold)字符串中的字符大小写

-u选项(独特,unique)删除输出中的重复行

-t c选项使用c做为字段界定符

-k X选项按照使用c字符分隔的X列来整理能够使用多次

指定:作为分隔符第三列按照从大到小排列

3.png

三、文本排序uniq

uniq命令:从输入中删除重复的前后相接的行

格式:uniq[OPTION]… [FILE]…

选项:

-c: 显示每行重复出现的次数;

-d: 仅显示重复过的行;

-u: 仅显示不曾重复的行;

连续且完全相同方为重复

常和sort 命令一起配合使用:

sort userlist.txt | uniq-c

例如:

4.png

四、比较文件diff

diff命令在最简单的情况下,比较给定的两个文件的不同


表示file1和file2第三行file2文件中多了546hfbjhf

1.png


diff命令的输出被保存在一种叫做“补丁”的文件中

使用-u选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件


五、复制对文件改变patch

patch命令被用于为开放源代码软件安装补丁程序。让用户利用设置修补文件的方式,修改,更新原始文件。如果一次仅修改一个文件,可直接在命令列中下达指令依序执行。如果配合修补文件的方式则能一次修补大批文件,这也是Linux系统核心的升级方法之一。


patch命令复制在其它文件中进行的改变(要谨慎使用!)

适用-b选项来自动备份改变了的文件

$diff-ufoo.conf-brokenfoo.conf-works>foo.patch

$patch-bfoo.conf-brokenfoo.patch


例如:用patch来恢复文件

恢复f2文件的时候文件名变成f1,原有的f1文件自动备份命名为.orig结尾的文件

2.png

六、练习

1、找出ifconfig命令结果中本机的所有IPv4地址

3.png

2、查出分区空间使用率的最大百分比值

4.png

3、查出用户UID最大值的用户名、UIDshell类型

5.png

4、查出/tmp的权限,以数字方式显示

6.png

5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

7.png

6、统计/etc/init.d/functions每个单词出现的字数

8.png





原创文章,作者:xiaoqing,如若转载,请注明出处:http://www.178linux.com/30535

(1)
上一篇 2016-08-07 23:33
下一篇 2016-08-08 09:22

相关推荐

  • 马哥教育网络班22期第三周课程练习1

    1、who | awk {'print $1'} | sort | uniq  2、last | head -n1 3、awk -F":" {'print $7'} /etc/passwd |  awk '{for(i=1;i<=NF;i++)a[$i]++}EN…

    Linux干货 2016-08-29
  • grep&正则表达式

    grep&正则表达式 grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 语法 grep [选项]… PATTERN [FILE]… 选项 -a 不要忽略…

    Linux干货 2018-03-23
  • CentOS 6.5 LVM磁盘管理学习笔记(二)

    ACTIVE            '/dev/vg51cto/LogVol04' [22.80 GiB]inherit  ACTIVE       …

    Linux干货 2016-08-29
  • MYSQL数据库基础教程

    一、数据库介绍 1.数据库管理系统的产生背景 (1)数据时代的到来要求对数据进行有效和安全的管理 涉及的数据量大 数据不随程序的结束而消失 数据被多个应用程序共享 大数据时代的到来 (2)传统文件系统管理上的缺陷要求改变数据管理方式 编写应用程序不方便 数据冗余不可避免 应用程序依赖性 不支持对文件的并发访问 数据间联系弱 难以按用户视图表示数据 无安全控制…

    Linux干货 2017-10-05
  • vim文本编辑器

    vi简介 vi:Visual Interface,是一种功能强大的文本编辑器,工作在字符模式下,它可执行输出、输出、查找、替换、块等众多文本操作,不需要图形界面,因此执行起来效率会非常高,主要用来编辑纯文本文件,常见的编码有,ASCII,Unicode等等 文本编辑器的种类:     行编辑器:逐行来对文本进行处理的工…

    Linux干货 2016-08-15
  • linux下绘图工具rrdtool

    一、前言       为了做云缓存平台的技术储备,从零开始学习了rrdtool,rrdtool非常强大,刚接触会有摸不着边的感觉,尤其是一堆概念性的东西。学习的切入点便是这些概念,一一理解后你才能品尝到rrdtool的清香,首先要感谢ailms整理的“RRDtool简体中文教程 v1.01”,通俗易…

    Linux干货 2015-03-27