cut

cut – remove sections from each line of files.

输出每行中指定的字段

语法

       cut OPTION... [FILE]...

[选项]

-b, –bytes=LIST : 只输出指定的字节。

-c, –characters=LIST : 只输出指定的字符。

-d, –delimiter=DELIM : 指定分隔符,默认为TAB。

-f, –fields=LIST : 打印指定的字段。

-n : 与 -b 选项一起使用,不对多字节的字符进行拆分。

–complement : 取反。

-s, –only-delimited : 只输出包含分隔符的行。

–output-delimiter=STRING : 定义输出使用的分隔符。

[实例]

[root@z-dig ~]# echo 'abcdef'|cut -b 1
a
[root@z-dig ~]#

[root@z-dig ~]# echo 'abcdef'|cut -b 5
e
[root@z-dig ~]#

[root@z-dig ~]# echo 'abcdef'|cut -b 1,5
ae
[root@z-dig ~]#

UTF-8 编码 一个字符三个字节

[root@z-dig ~]# echo '运维架构'|cut -b 1
▒
[root@z-dig ~]#

[root@z-dig ~]# echo '运维架构'|cut -c 1
运
[root@z-dig ~]#

[root@z-dig ~]# echo '运维架构'|cut -b 1,2,3
运
[root@z-dig ~]#
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -f 1
a,b,c,d,e,f
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -d ',' -f 1
a
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -d ',' -f 1,3
a,c
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -d ',' -f 1,3,5
a,c,e
[root@z-dig ~]#
[root@z-dig ~]# echo '运维架构'|cut -b 1
▒
[root@z-dig ~]# echo '运维架构'|cut -n -b 1

[root@z-dig ~]#
[root@z-dig ~]# echo '运维架构'|cut --complement -b 1
▒▒维架构
[root@z-dig ~]# echo '运维架构'|cut --complement -b 1,2,3
维架构
[root@z-dig ~]#
[root@z-dig ~]# echo -e 'a,b,c,d,e,f\na b c d e f'|cut -d ',' -f 1
a
a b c d e f
[root@z-dig ~]# echo -e 'a,b,c,d,e,f\na b c d e f'|cut -d ',' -s -f 1
a
[root@z-dig ~]#
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -d ',' -f 1,3,5
a,c,e
[root@z-dig ~]# echo 'a,b,c,d,e,f'|cut -d ',' --output-delimiter=':' -f 1,3,5
a:c:e
[root@z-dig ~]#


正文部分到此结束

转载请注明原文链接 http://www.z-dig.com/cut.html