zoukankan      html  css  js  c++  java
  • cut命令详解

    Linux cut命令

    Linux cut命令用于显示每行从开头算起 num1 到 num2 的文字。

    cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。

    如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一

    用法:

    cut  [-bn] [file]
    cut [-c] [file]
    cut [-df] [file]

    参数解释:

    -b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。

    -c :以字符为单位进行分割。

    -d :自定义分隔符,默认为制表符。

    -f :与-d一起使用,指定显示哪个区域。

    --complement:补足被选择的字节、字符或字段

    -n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的
            范围之内,该字符将被写出;否则,该字符将被排除。如果存在中文,截取了一个字得一个字节。不加-n报错到文件后会乱码。

    -s :不打印不包含分隔符的行

    --help:显示指令的帮助信息;

    --version:显示指令的版本信息

    ************************************************************************************************************

    cut命令可以将一串字符作为列来显示,字符字段的记法:

    N-:从第N个字节、字符、字段到结尾;

    N-M:从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段;

    -M:从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。

    上面是记法,结合下面选项将摸个范围的字节、字符指定为字段:

    -b 表示字节;

    -c 表示字符;

    -f 表示定义字段

    实例:

    1、当你执行who命令时,会输出类似如下的内容:

    $ who
    rocrocket :0           2009-01-08 11:07
    rocrocket pts/0        2009-01-08 11:23 (:0.0)
    rocrocket pts/1        2009-01-08 14:15 (:0.0)

    如果我们想提取每一行的第3个字节,就这样:

    $ who|cut -b 3
    c
    c
    c

     2、例如有一个学生报表信息,包含No、Name、Mark、Percent:

    cat test.txt
    No Name Mark Percent
    01 tom 69 91
    02 jack 71 87
    03 alex 68 98

    获取前两个字段得信息:

    [root@node2 ~]# cut -f1,2 -d" " test.txt 
    No Name
    01 tom
    02 jack
    03 alex

    获取除了第一个字段外,其它字段得信息。

    [root@node2 ~]# cut -f1 -d" " --complement test.txt 
    Name Mark Percent
    tom 69 91
    jack 71 87
    alex 68 98

     3、打印字符

    打印第1个到第3个字符
    cut -c 1-3 test.txt
    打印前2个字符
    cut -c-2 test.txt
    打印从第5个字符开始到结尾
    cut -c 5- test.txt
  • 相关阅读:
    【正则】——作业计算数学运算
    【面向对象】-类和对象作业
    【递归】
    笔记本linux问题记录
    监听器模式(Listener)
    Java引用类型
    Dubbo-服务发布-本地暴露/远程暴露
    完成一个Spring的自定义配置
    Dubbo SPI-Adaptive详解
    Dubbo-动态编译
  • 原文地址:https://www.cnblogs.com/jkin/p/10204717.html
Copyright © 2011-2022 走看看