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

相关推荐

  • 优云软件老司机:如何让运维操作更轻松、高效

    讲师介绍 庞辉富 •广通软件技术总监 •拥有10多年IT运维管理软件研发经验 •致力于自动化运维解决方案的研究和推广 •主导研发的产品广泛应用于海关、公安、能源等多个行业 技术发展给运维带来的挑战 当前的IT建设在这些新技术的演进下,我们看到的是呈现“双态IT”特征。Gartner也提出双模IT理论,与现在谈的双态IT是异曲同工的,不再是一种单纯的形态,而是…

    系统运维 2017-01-09
  • Linux命令语法及其帮助信息

    一、Linux命令语法 1、通用格式:command options argument 2、Command: 3、Options: 4、Argument: 二、Linux命令帮助信息获取途径 1、help命令 && –help选项 2、manual (1)章节 (2)语法 (3)man命令输出详解   &nbs…

    Linux干货 2016-09-19
  • 网络21期第十周博客作业

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) Centos6启动流程:       POST加电自检 —> BOOT Sequence —> 加载内核启动系统    &n…

    Linux干货 2016-09-15
  • bash的基础特性之一

    bash的基础特性之一 命令历史:shell进程会保存会话中此前用户使用过的命令; history:命令的用法 history 【-c】【-d #】 【n】或者【文件名】     -c:清空命令历史     -d 【#】:删除指定的命令历史…

    Linux干货 2016-12-18
  • vsftpd虚拟用户搭建

    首选的FTP服务器搭建方式 安装vsftpd      yum install -y vsftpd      systemctl enable vsftpd     #设置开机启动      systemctl is-enabled vsf…

    Linux干货 2017-04-27
  • DNS服务器搭建

    1. 配置正向解析 1.安装bind yum install bind bind-utils -y 2.配置/etc/named.conf,需要修改的地方 listen-on port 53 { 127.0.0.1; 192.168.42.135; }; allow-query { any; }; dnssec-enable no; dnssec-valid…

    Linux干货 2017-05-24