文本处理工具

首先介绍一下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
下一篇 2017-07-29

相关推荐

  • GNU awk的输出格式化和操作符

    printf命令 格式化输出:printf “FORMAT”, item1, item2, … (1) 必须指定FORMAT (2) 不会自动换行,需要显式给出换行控制符,\n (3) FORMAT中需要分别为后面每个item指定格式符 格式符:与item一一对应 %c: 显示字符的ASCII码 %d, %i: 显示十进制整数 %e, %E:显示…

    2018-01-01
  • ping命令的部分用法

    Linux系统的ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”不能打开网页时会说“你先ping网关地址192.168.1.1试试”。它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to&nbsp…

    Linux干货 2017-07-30
  • N23-第二周博客作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理工具:cp,mv,rm    cp命令:cope       源文件:目标文件       单源复制:cp [OPTION]… [-T] SOURCE DEST …

    Linux干货 2016-12-05
  • Linux中的账号管理之命令的使用(中)

    linux中账号管理的命令非常多,我这里主要介绍最常见的几个命令,这些命令分别是针对用户和组的管理 主要介绍对用户管理的命令: 一、用户创建:useradd useradd命令用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实…

    Linux干货 2016-08-07
  • Linux基础学习总结(四)

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp -r /etc/skel/ /home/tuser1chmod -R 700 /home/tuser1ll -d /home/tuser1 2、编辑/etc/group文件,添加组hadoop。 echo “hadoo…

    Linux干货 2016-10-03
  • LVM(重要)

    LVM   LVM(Logical Volume Manger),是一种磁盘分区管理机制,可以灵活的调整分区的大小。它是将多个硬盘组成卷组的形式实现的。说白了就是通过软件来实现对分区灵活管理。   LVM是将多块硬盘组成PV,再由PV组成VG,VG再组成lv,然后在lv上创建文件系统。   物理存储介:指的就是硬盘等,最基本的存储单元。   PV(physi…

    Linux干货 2016-08-30