文本处理工具

首先介绍一下wc 
这个工具,一看到这个词,我不禁捧腹大笑,这不是我们经常要去的地方吗?其实我们都错了,厕所的正确翻译为toilet,为什么叫wc 呢?这中间还有个故事,在这里就大概说一下吧。 很早以前,厕所Toilet里都有水箱water
closet, 人们一提到water closet就想到了toilet,因此water
closet就成了toilet的代名词。其实今天小编介绍的这个文本编辑工具,叫做word count.就是单词计数的意思,简写WC,大家不要误会啦。下面说一下它的详细用法:

下面编辑一个文件做例子介绍,请看图

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/27 20:45

 

这是小编写好的一个小小的文件,内容如上图所示,下面就展示wc的功能啦。

wc

wc   -m
filename  显示文件的字符数(可以查一下,一共20个字符,包括空格和换行符。)

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/27 20:47

wc  -l
filename  显示文件的行数

 

文本处理工具

 

wc    -c  filename  
显示文件的字节数

 

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/27 20:52

wc   -w  filename  显示文件的单词数(一共是五个单词,中间没空格,代表一个单词)

 

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/27 20:54

wc  filename (这里一共显示了三位数字,分别是:行数,单词数,字节)

 

文本处理工具

 

第二个就是用于文本排序的命令sort

常用的基本选项有:

sort   -r  filename  倒着排序显示

比如原本一个文件内容是这样的:

 

文本处理工具

 

经过排序后就变成这样了:

 

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/28 8:56

sort -n filename 按数字大小正显示

 

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/28 8:59

 

sort -u  filename 删除输出中的重复行

比如,刚开始文件内容是这样的:

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/28 9:02

 

经过排序后:

 

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/28 9:02

 

 

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

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

在最后再给大家介绍一个非常有趣的命令,,如果你学会了它,你就会感觉这个世界 充满了乐趣,其乐无穷。那就是grep.

grep是文本过滤工具,它的用处真的是非常的多,常常与正则表达式一块用,而且非常重要。下面介绍一下它的命令选项。

grep

–color=auto 将匹配的结果着色显示

文本处理工具

 

-v 反向匹配

示例:如一个文件包含许多内容,现在要显示不以f开头的文件,这时候就能派上用场了。

本来文件里的内容是:

文本处理工具

 

使用了grep -v 之后 就变成这样了:里面没有以f开头的文件了。

 

文本处理工具

 

-i 忽略大小写

示例:在文件f2中写入一些内容,如下:

 文本处理工具

     使用grep -I  “^t” 命令,意思是显示以t开头的字符,不区分大小写,结果如下:

 

文本处理工具

在创建的过程中,遇到了一些问题,比如我刚开始创建了f1文件,但是使用grep -I 命令之后不出现结果,在同学的帮助下 ,终于找到了问题所在,原因是我在f1里写入的内容如下:

文本处理工具

 

屏幕剪辑的捕获时间:
2017/7/29 16:46

 

为什么出不来结果呢,在这里我不得不佩服我自己,grep 
-I ^t 原本的意思是在每行选择以t开头的字符,我一共打了一行内容,中间并没有换行,所以开头是以q开始的字符,肯定出不来我想要的结果,以后一定要看清题意在写。

       -n 显示的结果前增加行号

文本处理工具

      c 仅显示匹配到结果的行数

     示例:f1内容如下:

文本处理工具

     使用了命令之后:

文本处理工具

下面的比较简单 ,我就不一一举例了。

      -o 仅显示匹配到的字符串

-q
静默模式,不输出任何信息

或者
&> /dev/null

-A#
显示关键字行及向后#行

-B#
显示关键字行及向前#行

nmap
-v -sP 172.17.252.0/24 |grep -B1 “Host is up”|grep for |cut -d”
” -f5 |wc -l

-C#
显示关键字向前#行,当前行,及向后#行

-e
关键字1 -e 关键字2  实现多个选项间的逻辑or关系

-w
匹配整个单词

-E
使用扩展正则表达式 或egrep

-F
不使用正则表达式 或 fgrep 

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

(0)
llllll
上一篇 2017-07-29 20:47
下一篇 2017-07-29 21:53

相关推荐

  • 学习标准I/O和管道的心得体会

    重定向、标准输出、标准输入、标准错误、管道的命令整理

    2017-11-20
  • Linux下的文件管理系统

    一、文件系统的FHS标准     因为Linux的属于开源系统,开发人员多,为了统一开发标准,Linux有一个文件系统标准,也就是FHS(Filesystem HierarchyStandard)标准。有了这个标准,那些独立的软件开发商、系统开发人员以及系统的使用者就能方便的在系统上操作。 二、文件系统  &…

    Linux干货 2016-08-02
  • Linux文本处理三剑客之一sed

    这周我们学习了文本处理工具三剑客之一的sed,对于之前学的grep同样的重要,也同样是一个难点。sed是针对一个文件或者多个文件一行一行处理的,它处理的时候,把当前处理的行存储在模式空间,处理完成后,把缓冲区内容输出到屏幕上,接着处理下一行。直到文件末尾。原文件并没有经过更改。 1、sed一些常用的选项     -n …

    2017-08-26
  • 推荐-运维学习笔记-Puppet应用配置的工作原理

    背景知识 Puppet的核心功能是配置管理。一般来说,用户在master上集中做配置,同时,被管理节点上的agent会定期从master上下载配置数据,再应用(apply)到本地,从而使管理节点的状态(用户,组,文件,安装包,服务等的设置和运行状态)与masters上定义的保持一致。 有时,出于测试的目的,并不希望真的应用配置,那么就需要执行puppet a…

    2016-06-01
  • 任务计划2

    [root@localhost app]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin:/root/bin MAILTO=root   # For details see man 4 crontabs   # Example of job defi…

    Linux干货 2017-05-15
  • vsftpd, samba, nfs, mariadb

    2018/2/13 11:45 第十一周

    2018-02-13