Linux 命令之cut、seq、head 和 tail

一.

CUT(1)                        User Commands                                       CUT(1)

1. Name

cut - 从每一行文件中删除部分内容。即,用于显示每行从开头算起 num1 到 num2 的文字。

2. 简介

cut  OPTION ...  [FILE] ...

3. 描述

将每个文件中选定的部分行打印到标准输出。

长选项的强制参数对于短选项也是强制的。

-b, --bytes=LIST                             以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。只有字符的全部字节落在由 -b 标志的 List 参数指示的范围之内,该字符才被写出;否则,该字符将被排除。备注:一个汉字占3个字节

           实例:

                Linux 命令之cut、seq、head 和 tail_第1张图片

-c, --characters=LIST                    只选择这些字符。一个汉字也是一个字符

-d, --delimiter=DELIM                    使用DELIM而不是TAB(制表符)作为字段分隔符  

-f, --fields=LIST                              只选择这些字段;还可以打印任何不包含分隔符字符的行,除非指定了-s选项

-n                                                    -b一起使用:不拆分多字节字符

--complement                                输出选定的字节、字符或字段集的补集

-s, --only-delimited                       不打印不包括分隔符的行。备注:和-f配合使用

              实例:

                    Linux 命令之cut、seq、head 和 tail_第2张图片

--output-delimiter=STRING          使用STRING作为输出分隔符,默认情况下使用输入分隔符

必须指定-b-c-f其中之一。每个列表由一个范围组成,或者由逗号分隔的多个范围组成。所选输入的写入顺序与读取的顺序相同,并且只写入一次。每个范围是:

(1)  N    从第1 个开始数的第N 个字节、字符或域
        (2     N-    从第N 个开始到所在行结束的所有字符、字节或域
        (3) N-M    从第N 个开始到第M 个之间(包括第M 个)的所有字符、字节或域
        (4) -M    从第1 个开始到第M 个之间(包括第M 个)的所有字符、字节或域
FILE不存在或FILE为"-"时,从标准输入读取。

实例1:

Linux 命令之cut、seq、head 和 tail_第3张图片

实例2:

Linux 命令之cut、seq、head 和 tail_第4张图片

  二.

SEQ(1)                                          User Commands                            SEQ(1)

1. NAME

seq - 打印一个数字序列

2.简介

seq  [OPTION]  ...  LAST

seq  [OPTION] ...   FIRST  LAST

seq  [OPTION] ...   FIRST  INCREMENT  LAST

3. 描述

打印步进为INCREMENT,从FIRSTLAST的数字。

 长选项的强制参数对于短选项也是强制的。

 -f, --format=FORMAT                       使用sprintf风格的浮点FORMAT

              Linux 命令之cut、seq、head 和 tail_第5张图片

  -s, --separator=STRING                      使用STRING分割数字(默认是:\n)

  -w, --equal-width                                 用前导零填充使宽度相等

        Linux 命令之cut、seq、head 和 tail_第6张图片

  Linux 命令之cut、seq、head 和 tail_第7张图片        

如果省略FIRSTINCREMENT,则默认值为1。也就是说,即使LAST小于FIRST,省略的增量也默认为1。当当前数字和INCREMENT之和大于LAST时,数字序列结束。 FIRST, INCREMENTLAST被解释为浮点值。如果FIRSTLAST小,INCREMENT通常是正的,如果FIRSTLAST大,INCREMENT通常是负的。FORMAT必须适合打印“double”类型的一个参数;如果FIRST, INCREMENTLAST都是精度最高PREC的定点十进制数,则默认为%.PREC;否则默认为%g。

三.

HEAD(1)                                  User Commands                   HEAD(1)

Name

head - 输出文件(s)的第一部分

简介

head  [OPTION]  ...  [FILE]

描述

将每个FILE的前10行打印到标准输出。对于多个FILE,在每个文件前面都加上一个给出文件名的头(如实例1)。如果没有文件,或者当文件为-时,读取标准输入。
       长选项的强制参数对于短选项也是强制的。

实例1:

Linux 命令之cut、seq、head 和 tail_第8张图片

-c, --bytes=[-]K         打印每个文件的前K个字节;如果是以“-”开头,打印每个文件中除最后K字节外的所有字

       实例2:

           Linux 命令之cut、seq、head 和 tail_第9张图片     

-n, --lines=[-]K         打印前K行而不是前10行;如果以“-”开头,打印每个文件中除最后K行以外的所有行                             

         实例3:

             Linux 命令之cut、seq、head 和 tail_第10张图片  

-q, --quiet, --silent        永远不要打印给出文件名的头文件

       实例4:

           Linux 命令之cut、seq、head 和 tail_第11张图片

四.

TAIL(1)                            User Commands                                  TAIL(1)

NAME

tail - 输出文件(s)的最后部分。

简介

tail  [OPTION] ... [FILE]  ...

描述

将每个FILE的后10行打印到标准输出。对于多个FILE,在每个文件前面都加上一个给出文件名的头(如实例1)。如果没有文件,或者当文件为-时,读取标准输入。
       长选项的强制参数对于短选项也是强制的。

-c, bytes=K                输出最后K个字节;或者使用 -c +K从每个文件的第K个字节开始输出所有字节

          实例1:

               Linux 命令之cut、seq、head 和 tail_第12张图片

-f, --follow[={name|descriptor}]       随着文件的增长输出追加的数据。缺少的选项参数表示“描述符”

         实例2:

             Linux 命令之cut、seq、head 和 tail_第13张图片

           

           

-F            等同于 --follow=name  --retry

-n, --lines=K                 输出后K行,而不是最后10行;或者使用 -n +K 从每个文件第K行开始输出所有行。

--max-unchanged-status=N 

               与--follow=name 合用,重新打开一个没有打开的文件。

                在N次迭代(默认为5次)之后更改大小,查看是否已断开链接或重命名(这是旋转日志文件的常见情况);对于inotify,这个选项很少有用。

--pid =PID    与 -f 合用,表示在进程ID,PID死掉之后结束 。

-q, --quiet, --slient

          从不输出给定文件名的头部部分。备注:这是针对多个输入文件的情况。

--retry          如果无法访问文件,请继续尝试打开该文件。

-s, --sleep-interval=N     与 -f 合用,表示在迭代之间休眠大约N秒(默认1.0);与 inotify 和 --pid=P 合用,表示至少每N秒检查进程P一次。

-v, --verbose          总是输出给定文件名的头部部分。

使用 --follow  (-f) , tail默认跟随文件描述符,这意味着即使跟随的文件被重命名,tail也会继续跟踪它的结尾。当您真正想要跟踪文件的实际名称而不是文件描述符(例如,日志旋转)时,这种默认行为是不可取的。在那种情况(即跟踪文件的实际名称)下,使用--follow=name。这将导致tail以一种适应重命名、删除和创建的方式跟踪已命名的文件。       

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Linux 命令之cut、seq、head 和 tail)