cut是一个针对行的数据选取命令

SYNOPSIS

cut [OPTION]... [FILE]...

OPTION

  • -b  以字节为单位进行分割,如果是多字节的话就需要注意了
  • -c  以字符为单位进行分割
  • -d  自定义分割符,默认为制表符
  • -f  显示哪个区域,与-d一起使用
  • -n  表示一个范围,可与-b和-c一起使用
  • -s  表示不包括那些不含分隔符的行

愉快的就开始吧

 [root@iZ288fgkcpkZ cut]# tail - string.txt
冰川里的哈密瓜 职员 北京市 90后已婚小鲜肉
可乐的厨房 互联网 北京市 90后幸福小咖
蛋包饭喵喵 编辑 北京市 90后北京菇凉
爱学习的牛妈 自由职业 安徽省 崇尚自由的幸福妈咪
四毛的娘亲 全职妈妈 河南省 80后文艺娘亲
[root@iZ288fgkcpkZ cut]#

取出id

[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -b -

[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -b -

[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -b ,,,-

[root@iZ288fgkcpkZ cut]# 

需要说下-n

n  只取出第n个字节/字符/字段

n-  取出第n个字节/字符/字段(包括n)到行尾

-n  取出第一个字节/字符/字段到第n个字节/字符/字段(包括n)

n-m  取出第n个字节/字符/字段(包括n)到第m个字节/字符/字段(包括m)

n,m  取出第n个字节/字符/字段,取出第m个字节/字符/字段

为什么上面最后一个列子并不是按照我写的顺序取出来的?  因为会先将其排序

取出昵称第一个字符

[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -b ,,
冰
可
蛋
爱
四
[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -b ,,
冰
可
蛋
爱
四
[root@iZ288fgkcpkZ cut]# tail - string.txt | cut -c
冰
可
蛋
爱
四
[root@iZ288fgkcpkZ cut]#

取出整个昵称呢?

[root@iZ288fgkcpkZ cut]# tail - string.txt |cut -f
冰川里的哈密瓜
可乐的厨房
蛋包饭喵喵
爱学习的牛妈
四毛的娘亲
[root@iZ288fgkcpkZ cut]# tail - string.txt| sed 's/\t/\s/g' |cut -d \s -f
冰川里的哈密瓜
可乐的厨房
蛋包饭喵喵
爱学习的牛妈
四毛的娘亲
[root@iZ288fgkcpkZ cut]#

如果指定了分割符,但是文本中有不包含分割符的行呢?

修改文本

[root@iZ288fgkcpkZ cut]# tail - string.txt
可乐的厨房 互联网 北京市 90后幸福小咖
蛋包饭喵喵 编辑 北京市 90后北京菇凉
爱学习的牛妈 自由职业 安徽省 崇尚自由的幸福妈咪
四毛的娘亲 全职妈妈 河南省 80后文艺娘亲
8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854
[root@iZ288fgkcpkZ cut]#

还是取出昵称列,用-s可以将不包含分割符的行排除出去

[root@iZ288fgkcpkZ cut]# tail - string.txt| cut -f
可乐的厨房
蛋包饭喵喵
爱学习的牛妈
四毛的娘亲
8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854
[root@iZ288fgkcpkZ cut]# tail - string.txt| sed 's/\t/\s/g' |cut -d \s -f
可乐的厨房
蛋包饭喵喵
爱学习的牛妈
四毛的娘亲
8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854
[root@iZ288fgkcpkZ cut]# tail - string.txt| sed 's/\t/\s/g' |cut -sd \s -f
可乐的厨房
蛋包饭喵喵
爱学习的牛妈
四毛的娘亲
[root@iZ288fgkcpkZ cut]#

2015-09-21 12:02:28

cut的更多相关文章

  1. POJ Minimum Cut

    Minimum Cut Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 9302   Accepted: 3902 Case ...

  2. Final Cut Pro X效果插件开发总结

    一.介绍 最近公司需要针对Final Cut Pro(FCP)开发一款效果插件,用于对公司自己开发的视频格式进行后期处理.Final Cut Pro是苹果公司推出的一款视频剪辑软件,因此需要在OSX平 ...

  3. Linux cut命令

    [root@wang /]# cat /etc/passwd root:x:::root:/root:/bin/bash bin:x:::bin:/bin:/sbin/nologin daemon:x ...

  4. POJ 2914 Minimum Cut

    Minimum Cut Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 9319   Accepted: 3910 Case ...

  5. 几何服务,cut功能测试

    关于几何服务 几何服务用于辅助应用程序执行各种几何计算,如缓冲区.简化.面积和长度计算以及投影.在 ArcGIS Server 管理器中启动几何服务之后,您才能够在应用程序开发过程中使用该服务. 问题 ...

  6. 几何服务,cut功能,输入要素target(修改后)内容。

    几何服务,cut功能测试,输入要素target(修改后)内容. {"displayFieldName":"","fieldAliases": ...

  7. 几何服务,cut功能,输入要素target(修改前)内容。

    几何服务,cut功能测试,输入要素target(修改前)内容. {"geometryType":"esriGeometryPolyline","geo ...

  8. linux sort,uniq,cut,wc.

    文章转自 http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858385.html sort sort 命令对 File 参数指定的文件中的行排 ...

  9. linux head、tail、sed、cut、grep、find

    head用法: head 参数 文件名 -cn:显示前n个字节    -n:显示前n行 例子:head -c20 1.txt 显示1.txt文件中前20个字符 ls |  head -20:显示前20 ...

  10. IOS 错误 [UIWebView cut:]: unrecognized selector sent to instance

    那在什么场景中会出现这种情况呢? 如果一个包含文字的输入元素有焦点,然后按钮的点击会导致输入失去焦点,然后接下来在输入时双按会重新得到焦点并从弹出bar中选择剪切复制粘贴,就会导致此error. 也就 ...

随机推荐

  1. IOS页面自动布局 之 NSLayoutConstraint基础篇

    使用AutoLayout之前需要知道以下两点: 1.必须设置 translatesAutoresizingMaskIntoConstraints为NO. 2.如果是viewControl则AutoLa ...

  2. C#设计模式——原型模式(Prototype Pattern)

    一.概述 在软件开发中,经常会碰上某些对象,其创建的过程比较复杂,而且随着需求的变化,其创建过程也会发生剧烈的变化,但他们的接口却能比较稳定.对这类对象的创建,我们应该遵循依赖倒置原则,即抽象不应该依 ...

  3. 【分享】深入浅出WPF全系列教程及源代码

    来源:http://blog.csdn.net/yishuaijun/article/details/21345893 本来想一篇一篇复制的.但是考虑到别人已经做过了,就没有必要了吧,就给大家一个目录 ...

  4. MySQL更新优化

    通常情况下,当访问某张表的时候,读取者首先必须获取该表的锁,如果有写入操作到达,那么写入者一直等待读取者完成操作(查询开始之后就不能中断,因此允许读取者完成操作).当读取者完成对表的操作的时候,锁就会 ...

  5. 关闭Eclipse中自动弹出console的功能

    当我们使用Eclipse编写代码的时候,一般都会使界面最大化,如果这时tomcat服务器处在运行的状态,那么当后台有打印内容,比如日志输出,代码程序报错输出时,console就会自动弹出,很不方便. ...

  6. python面向对象(一),Day6

    connfigparser模块 xml模块 shutil模块以及压缩解压 subprocess模块 面向对象(上) 类和对象 onfigParser 用于对特定的配置进行操作,当前模块的名称在 pyt ...

  7. Python迭代器:捕获Generator的返回值

    但是用for循环调用generator时,发现拿不到generator的return语句的返回值.如果想要拿到返回值,必须捕获StopIteration错误,返回值包含在StopIteration的v ...

  8. 二进制打印与逆序_C语言(转)

    //二进制逆序 by MoreWindows( http://blog.csdn.net/MoreWindows ) #include <stdio.h> //二进制打印函数 templa ...

  9. C#内存占用大量资源的解决办法

    昨天,独立完成了一个项目,一直运行起,起初运行内存为15Mb左右,但是发现内存以每秒2Mb的速度增加,吓了我一跳(注:我实习生,我的工作中第一个项目).从头找寻对象,再来dispose,弄得我晕头转向 ...

  10. 自制html5塔防游戏

    这是一款由html5里的canvas和普通html元素结合的小游戏,游戏比较简单单一.主要是以建塔,防御为主.下面是游戏的一张截图: 这里是游戏的地址,直接去玩下吧:http://www.lovewe ...