部分基本的文本处理工具

一、

  抽取文本的命令

    1、cat

    cat [option]… [file]…

    常用选项:

        -E  显示行尾结束符$

        -n  –number,对显示的每一行进行编号

        -A  显示所有控制符

         -b  –number-blank,对空白行不编号,只对非空白行编号

        -s  –squeeze-blank,压缩连续的空行成一行

   2、more分页查看文件

    more [option]… file…

        -d  显示翻页及退出提示

   3、less,与more类似,一页一页的查看本地文件或STDIN输出

        可以用/和?进行搜索

        n/N 可以配合搜索使用

   4、head

    head [option]… [file]…

  常用选项:

    -c#  指定获取前#字节

    -n#  指定获取前#行

    -#   指定行数

   5、tail 与head的选取顺序相反

    tail [option]… [file]…

  常用选项:

    -c#  指定获取后#字节

    -n#  指定获取后#行

    -#   指定行数

    -f   跟踪显示文件新追加的内容,常用作日志监控,tail -f -0 [file] &  后台应用刷新显示

    6、cut    对行进行分隔,然后切割对应的整列

    cut [option]… [file]…

    -d[分隔符]  指明分隔符,默认tab

    -f[Fields]:

        #  获取第#个字段

        #,#   离散的多个字段,例如1,3,5,6

        #-#   连续的多个字段  例如1-6

        #,#-#  混合使用  例如 1,3,5-7

    -c  按字符切割

    –output-delimiter=STRING 指定输出分隔符

    7、paste    合并两个文件同行号的列到一行

    paste [option]… [file]…

   常用选项

    -d[分隔符]   指定分隔符,默认用tab

    -s      所有行合成一行显示

   8、wc   计算单词总数、行总数、字节总数和字符总数

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

    wc [option]… [file]…

  常用选项

    -l  计算行数

    -w  计算单词总数

    -c  计算字节总数

    -m  计算字符总数

   9、文本排序sort   把整理过的文本显示在STDOUT上,不改变原始文件

    sort [option] file

  常用选项

    -r   执行反方向整理

    -n   按数字大小进行整理

    -f   忽略字符串中的字符大小写

    -u   删除输出中的重复行

    -t c  使用c作为字段定界符

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

   10、uniq   从输入中删除重复的前后相接的行

    uniq [option]… [file]…

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

    -d   仅显示重复过的行

    -u   仅显示不曾重复的行,连续且完全相同方为重复

  常配合sort命令一起使用  sort file | uniq -c

   11、diff  比较两个文件之间的区别 

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

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

    配合 patch 命令可以复制在其他文件中进行的改变,但是会覆盖原文件;配合 -b 选项使用,自动备份改变了的文件 

 

        

        

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

(0)
black_fishblack_fish
上一篇 2016-08-05 10:18
下一篇 2016-08-05 12:59

相关推荐

  • KVM部署及简单使用

    KVM特点 KVM必须在具备Intel VT或AMD-V功能的x86平台上运行。KVM包含一个为处理器提供底层虚拟化,可加载的核心模块kvm.ko(kvm-intel.ko或kvm-AMD.ko)。使用一个经过修改的QEMU(qemu-kvm),作为虚拟机上层控制和界面。 由于KVM仅是一个简单的虚拟化模块,所以它的内存管理没有自我实现,需借助于Linux内…

    Linux干货 2016-02-14
  • kickstart安装系统

    很多时候要安装很多机器是很繁琐,我们可以利用kickstart网络启动更加方便的去安装系统。 首先准备环境,安装相关程序。 [root@localhost ~]# yum -y install sytem-config-kickstart [root@localhost ~]# yum&n…

    Linux干货 2016-09-19
  • PHP字符串的编码问题

        大家都知道,不同字符编码,其在内存占用的字节数不一样。如ASCII编码字符占用1个字节,UTF-8编码的中文字符是3字节,GBK为2个字节。     PHP 也自带几种字符串截取函数,其中常用到的就是 substr 和 mb_substr。     使用substr截取中…

    Linux干货 2015-10-22
  • Nginx 代理和缓存

    一 实验环境 Nginx 版本:nginx-1.8.1 Nginx代理服务器WAN:192.168.1.5 LAN:172.16.2.1 Web1:172.16.2.2 Web2:172.16.2.3 1.  配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器 2.      …

    Linux干货 2016-12-05
  • Linux系统程序包的安装–RPM

           我们知道在操作系统上使用的程序都是有程序员通过开发工具得来的,程序员直接编写的纯文本的文件,我们称之为源代码,由于计算机识别的是二进制程序,因此在完成源代码编写之后,就必须要经过编译,使之成为操作系统可以“看得懂”的二进制程序,这里的编译是通过编译器来进行的操作,编译器的功能就是将源代码程序“转换”为二进…

    2017-04-23
  • 第八周作业

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;     在线的主机使用绿色显示;     不在线的主使用红色显示; 2、如何给网络接口配置多个地址,有哪些方式? 方法3:在/etc/sysconfig/netw…

    2017-04-20