文本处理工具

首先介绍一下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

相关推荐

  • linux网络管理

    什么是计算机网络     计算机网络是指将不同地理位置上,具有独立功能的计算机和网络设备通过通信链路连接起来,通过操作系统,网络管理软件,和网络通信协议的共同组合下的计算机系统团体,实现资源共享,信息传递的网络。计算机网络的组成部分有各种微小大型计算机,网桥,交换机,路由器,传输介质等网络设备,相应的软件系统,相应的通…

    Linux干货 2016-09-05
  • PXE网络引导自动化安装系统详解

    一、PXE:预引导加载环境  1.PXE          Preboot ExecuteEnvironment:支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial f…

    2016-04-30
  • iptables入门到进阶

    netfilter/iptables:        netfilter是存在于内核中的一个防火墙框架,用来管理网络数据包,netfilter在IP数据包处理流程中的5个关键位置放置了5个钩子(hook)函数,当数据包流经相应的位置时,相应的钩子函数会被调用,每个对应的钩子上有对应的表,表中有对应的…

    Linux干货 2017-05-02
  • Linux之bash shell脚本编程入门篇(二)以及文件查找和压缩的使用

    bash shell脚本编程入门篇(二) read命令的使用 作用:     使用read来把输入值分配给一个或多个shell变量:         -p指定要显示的提示      &nbs…

    Linux干货 2016-08-18
  • http协议

    ##socket套接字– 套接字,进程间通信IPC的一种实现,允许位于不同主机(或同一主机)上不同进程之间进行通信和数据交换。– socketAPI:封装了内核中所提供的socket通信相关的系统调用– socketDomain:根据其所使用的地址– AF_INET:Address Family,Ipv4&#8…

    Linux干货 2017-12-06
  • 从Code Review 谈如何做技术

    (这篇文章缘由我的微博,我想多说一些,有些杂乱,想到哪写到哪) 这两天,在微博上表达了一下Code Review的重要性。因为翻看了阿里内部的Review Board上的记录,从上面发现Code Review做得好的是一些比较偏技术的团队,而偏业务的技术团队基本上没有看到Code Review的记录。当然,这并不能说没有记录他们就没有做Code Review…

    Linux干货 2016-08-15