cut命令练习总结

cut命令的作用是实现文本内容的切割,原内容或者原文件不受影响。

  cut小练习:

          
            2016年 07月 21日 星期四 23:19:56 CST

            1:以字节为为单位进行切割 -b
                 date | cut -b 1-4
                     显示结果为 2016
                 date | cut -b 1-5
                     显示结果依然为2016

                 date | cut -b 1-6
                      显示结果依然为2016
                 date | cut -b 1-7
                      显示结果为2017年
                所以得出一个汉字占据三个字符

                  注意,当时用-b提取中文数据时候,可能会出现乱码的问题
                             对比如下
                                  [root@localhost ~]# date | cut -b 7
                                   ´
                                  [root@localhost ~]# date | cut -nb 7
                                   年
                               当遇到多字节字符时,可以使用-n选项,-n用于告诉cut不要将多字节字符拆开。

            2:以字符为单位进行切割-c

                 date | cut -c 1-4
                     显示结果为2016
                 date | cut -c 1-5
                      显示结果为2016年

                则一个汉字为一个字符

            3:以自定义分隔符进行切割-d

                  cat /etc/passwd | head -n 5 | cut -d: -f 1,3,5
                      显示结果为
                        root:0:root
                        bin:1:bin
                        daemon:2:daemon
                        adm:3:adm
                        lp:4:lp
                 
                 *当文件中存在制表符和空格符时候,怎么区分
                     首先查看cut.txt的文件内容
 
                     [root@localhost test]# cat cut.txt
                     this is tab    finish init
                     this is several space    finish

                     [root@localhost test]# sed -n l cut.txt
                     this is tab\tfinish init$
                     this is several space    finish$
                     
                     可以看出第一行tab后面\t,这就是制表符,而空格符依然以空格显示,用cut命令操作看看有什么不同
                     [root@localhost test]# cat cut.txt | cut -d ' ' -f 3
                     tab    finish
                     several
                     结果显示虽然是空格,但是却是制表符显示的结果,换个方式显示
                     [root@localhost test]# cat cut.txt | cut -d ' ' -f -3
                     this is tab    finish
                     this is several
                     其中tab    finish中间是用制表符隔开的
                     -3代表from first to M'th (included) byte, character or field 从第一个到3中间中间所有符合的。

原创文章,作者:我的滑板鞋,如若转载,请注明出处:http://www.178linux.com/25141

(1)
上一篇 2016-07-22 10:06
下一篇 2016-07-22 10:06

相关推荐

  • 软件管理

    ldd   /path/to/binary_file       查看二进制所依赖的库文件 ldconfig  -p  查看已缓存的库文件名和文件路径 配置文件 :/etc/ld.so.conf,   /etc/ld.so.conf.d/*.conf 缓存文件:/etc/ld.so.cac…

    Linux干货 2017-06-11
  • 马哥教育网络班21期-第五周课程练习

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; # grep -E "^[[::space]]\+.*" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;…

    Linux干货 2016-08-08
  • 计算机与操作系统

    计算机系统=Hardware+Software Linux操作系统=GNU/kernel+程序 (user space) ————– apps   shell    (人机交互接口) lib call(半层)  (kernel space) —&#…

    Linux干货 2017-02-14
  • linux网络管理

    在 /etc/udev/rules.d/路径下有个70-persistent-ipoib.rules文件,;里边有关于网卡信息的配置,,,在里边可以更改网卡的名字 注意:修改完之后要在/etc/sysconfig/network-scripts/ifcfg-eth0中修改,不然不能使用。 在Centos6以后有一个服务NetworkManager,他可以自动…

    Linux干货 2016-09-06
  • HTTP响应连接介绍

    HTTP即超文本传输协议,web站点的实现就是基于HTTP协议得以实现。本文将详细讨论HTTP。 1. HTTP协议版本: HTTP从诞生到现在一共有如下几个版本: HTTP 0.9:是最早的版本,为HTTP的原型版本,其功能非常简陋; HTTP 1.0:此版本增加了很多新特性,如cache,method,MIME等,MIME的出现让网页不再是单纯的纯文本界…

    2017-05-31
  • 字符串切片和yum的用法和rpm的编译安装

    1、冒泡法对数组内数据排序 2、源码安装http2.2.29     1.配置/etc/yum.repos.d/base.repo              2.安装group组:Development too…

    Linux干货 2016-08-30