zoukankan      html  css  js  c++  java
  • 字符提取命令

    1、cut


    cut命令是用来提取列的  

      cut [选项] 文件名

      选项:

            -f 列号

               -d  分割符

    提取下面文本文件中所有名字,列使用Tab键作为分割的

    当然也可以指定分割符,提供普通用户的用户名

    但是cut命令有其局限性,就是每列的分隔符个数不确定时(比如有多个空格),这样我们就无法进行提取了。

    2、printf命令


      这里的prinf和C中的用法差不多,有点不同是其参数个数可以多于输出类型的个数。对于上面的例子我们可以这样理解,第一个%s匹配第一参数1,第二个%s配第二个参数1,然后直接输出并换行。然后从剩余的参数中从左向右再次匹配。然后输出,如果没有匹配到参数就不输出。

      printf命令的主要作用就是给awk命令提供服务

    3.awk命令


    awk命令太过于复杂,这里只进行简答的介绍,主要弥补cut命令的不足

    输出41,其中的$5代表第五列

    • 添加条件

      

      这里的BEGIN是awk中的关键字,在处理文本之前先执行该命令。但是如果不加,结果如下

      

      这是因为awk在执行的时候也是按行读取来处理的,每读一行执行下一条件判断语句。与BEGIN相对应的就是END,意思是在整个数据处理完后执行某些动作。

    •  指定分割符

      awk默认是以空白为分割的(不管是空格还是制表符),这里我们可以通过FS来指定分割符

      

      输出所有的用户名

     4.sed命令


    sed命令是流处理命令

     

    • 输出第二行

      

    • 只输出第二行

      

    •  删除第二行到第四行数据输出,不影响文件本身

       

    • 在第二行后追加hello world!

        

    • 替换第二行

      

    • 字符串替换(全局替换)

      

    • 指定行替换

      

    • 多个命令一起执行

      

  • 相关阅读:
    Java 基础入门随笔(6) JavaSE版——数组操作
    Java 基础入门随笔(5) JavaSE版——函数重载
    Java 基础入门随笔(4) JavaSE版——程序流程控制
    Java 基础入门随笔(3) JavaSE版——逻辑运算符、位运算符
    jvm第二章(二)
    jvm第二章(一)
    jvm第一章(三)
    jvm第一章(二)
    jvm第一章(一)
    Java程序初始化的顺序是怎样的?
  • 原文地址:https://www.cnblogs.com/xidongyu/p/5559912.html
Copyright © 2011-2022 走看看