文本处理工具

首先介绍一下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)
上一篇 2017-07-29 20:47
下一篇 2017-07-29 21:53

相关推荐

  • 位置变量在Shell脚本编程中的作用

    位置变量:         如果要向一个shell脚本传递信息,可以使用位置参数完成此功能;参数相关数目传入脚本,此数目可以任意多,但只有前9个可以被访问,使用shift命令可以改变这个限制;参数从第一个开始,在第九个结束;每个访问参数前要加$符号;第一个参数为0,表示预留保存实…

    Linux干货 2016-08-15
  • Linux删除特殊字符文件

    由于很多原因可能会导致一些文件的文件名是乱码,当我们删除的时候就会发现这个文件名既不能自动补全,也不能直接删除。

    2017-11-11
  • LVM逻辑卷管理

    本次内容         1、什么是LVM         2、为什么使用LVM         3、LVM的操作命令 …

    Linux干货 2016-09-02
  • 用户及权限管理

    新建用户用到的相关文件/etc/default/useradd /etc/login.defs /etc/skel/* 批量创建用户1.创建用户列表user.txt(文件格式同/etc/passwd) 2.newusers user.txt 3.创建密码文件passwd.txt(格式  用户名:密码) 4.cat passwd.txt | chpa…

    Linux干货 2016-08-11
  • 手动添加用户

        通常使用useradd命令可以轻松添加一个用户,然后使用passwd命令设置一个密码后就可以登录系统了,其实这一过程完成可以自己手动完成,下面就让我们来通过修改配置文件来添加一个用户。 一、修改/etc/passwd文件     在etc/passwd文件中手动添加一行内…

    Linux干货 2015-04-27