Linux下cut命令使用

标题:cut命令的使用

作用:cut命令是对文件以行为单位,按照字节、字符、指定的域分隔符对行进行剪切,提取所需要的片段内容。

一、用法

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

     cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。 如果不指定 File   二、参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。

二、参数:

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

  -c(character):以字符为单位进行分割

  -d(delimiter):自定义分割符,默认为制表符

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

  -n:取消分割多字节字符。仅和-b标志一起使用。如果字符的最后一个字节落在由-b标志的List参数指示换

           行范围之内,该字符将被写出;否则,该字符将被排除。

三、实例

   1. 提取指定范围内的字符

           (1)cut -c n1-n2 filename(n1和n2是指定要截取的字符范围,n1是起始位置,n2是截止位置filename指          定文件名)

            filename:number.txt

            10 10

            20 20
            14 14
            11 11

              命令:cut -c 1-2 number.txt

                 输出:

           10
           20
           14
           11

       说明:文件内容是汉字的话,在Unix在汉字UTF-8编码占用的字符长度是3,所以需要将对应的一个字符的          长度扩展为3。

     (2) 例如:如果文件weekday内容为:

星期一
星期二
星期三
星期四
星期五
星期六
星期日

   那么如果要提取出第一个汉字“星”的命令就是:cut -c 1-3 tmp

   2. 提取指定范围内的字节

      (1)number.txt提取第1-2两个字节的内容

       命令:cut -b 1-2 number

                输出:

10
20
14
11

   3. 按照指定的域分隔符提取某个字段的内容(-d和-f配合使用)

           (1)$PATH的内容是按照:进行分割的,如果要提取出按照:分割后的第二个字段的内容

             命令:echo $PATH | cut -d ':' -f 2

             输出:/usr/local/sbin

猜你喜欢

转载自www.cnblogs.com/vs-kaka/p/11266794.html