Linux教程

linux文本处理命令和sed命令

本文主要是介绍linux文本处理命令和sed命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文本处理命令

  1.sort命令

    命令作用:

      sort命令的作用是将文件文本的每一行作为一个单位,相互比较。

      比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。

    语法格式:

      sort [参数] [文件]

 

 

    参数:

      -n:依照数值的大小排序。

      -r:以相反的顺序来排序

      -t:指定排序时所用的栏位分隔字符(默认是空格)

      -k:指定需要排序的栏位

    案例:

      案例1:按照数值从大到小的顺序排序

 

      案例2:以 ‘|’ 为分隔符将第二列排序

 

 

  2.uniq命令

    命令作用:

      uniq命令的作用是用来去除文本文件中连续的重复行。

      该命令中间不能夹杂其他文本行,因此一般需要sort命令先进行排序再去重。

    语法格式:

      uniq [参数] [文件]

 

 

    参数:

      -c:打印每行在文本中重复出现的次数

      -d:只显示有重复的纪录,每个重复纪录只出现一次

      -u:只显示没有重复的纪录

    案例:

      案例1:显示重复出现的记录并打印次数

 

 

      案例2:显示没有重复的记录

 

 

  3.cut命令

    命令作用:

      cut命令的作用是显示文件中指定的部分内容

    语法格式:

      cut [参数] [文件]

    参数:

      -d:自定义分隔符,默认的分隔符为制表符”TAB”

      -f:显示指定字段的内容 , 与-d一起使用

    案例:

      显示文件中以‘|’分隔的第2列的内容

 

 

  4.tr命令

    命令作用:

      tr命令的作用是可将字符进行替换和删除。

      tr命令的替换是将单个字符依次替换

    语法格式:

      tr [参数] [字符串1] [字符串2]

 

 

 

    参数:

      -d:删除字符串1中出现的所有字符

    案例:

      删除文件中的字符a和c

 

 

 

  5.wc命令

    命令作用:

      wc命令的作用是统计指定文件中的字节数、字数、行数,并将统计结果显示输出。

    语法格式:

      wc [参数] [文件]

    参数:

      -c:统计文件的字节数

      -w:统计文件中的字数(一个字被定义为由空白、跳格或换行字符分隔的字符串)

      -l:统计文件的行数

    案例:

      案例1:统计文件的字节数

 

 

      案例2:统计文件的行数

 

 

sed命令

  命令作用:

    sed命令的作用是利用脚本来处理文本文件

  语法格式:

    sed [参数] [处理规则] [操作对象]

 

  定位方法:

    定位方法指定位sed命令需要操作的数据的位置的方式

    1.数字定位法

      数字定位法指的是利用数字表示行号来定位处理数据的位置。

 

      3,5表示三到五行,d表示删除模式

    2.正则定位法

      正则定位法表示利用正则表达式定位需要操作的数据。

 

       在使用正则表达式时需要使用双斜杠,斜杠内写正则表达式,斜杠后写编辑模式

    3.数字和正则定位法

      数字和正则定位法表示从满足数字定位法条件的行到满足正则条件的行的数据

 

 

    4.正则正则定位法

      正则正则定位法表示从满足第一条正则的行开始到满足第二条正则的行的数据

  参数:

    -e:允许一行内进行多项编辑

    -n:仅显示处理后的结果

    -i:将处理结果保存到文件

    -r:支持拓展正则

    -f:以指定的脚本文件来处理文件

  编辑模式:

    d:删除

    p:打印

    s:将字符串转化为另一个字符串(每一行只替换一次)

    g:全部执行

    a:在当前行后添加数据

     i:单独使用时表示在当前行前添加数据

         与s连用时表示忽略大小写

    c:用新的数据替换原来的数据

    r:从文件中读取数据

    w:将数据写入文件

    y:将一个字符转换成另一个字符

  案例:

    案例1:在2.txt文件的第4行后添加zzz并将第2行的内容改为 ppp

 

 

    案例2:读取1.txt的内容显示在2.txt并不显示2.txt的内容

 

 

    案例3:将2.txt中的a改为A并将第一行写入a.txt文件

 

 

    案例4:将2.txt中的asd全部转变为ASD并保存

 

 

    案例5:在2.txt中的每一行末尾添加一个$

      &表示之前匹配到的全部内容。

 

    案例6:修改本机的ip地址

 

这篇关于linux文本处理命令和sed命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!