从输入行中选取字符或者字段

cut [options] [file-list]

cut 从输入行中选取字符或者字段,并将他们写到标准输出,字符和字段从1开始编号

参数

file-list 是文件的路径名列表,如果没有指定参数,或者使用连字符(-)来代替文件名,那么cut将从标准输入来获取输入

选项

-c clist                选取由clist中的列号指定的字符。clist的值为列号(多个值用逗号分隔)或者列范围,列范围用两个列号指定,

中间用连字符隔开。范围-n表示从第1~n列。n-表示从第n列到行尾。n-m表示从第n~m列

-d dchar              将dchar作为输入字段的分割符,默认分隔符为制表符,特殊情况下可使用转义字符

-f flist                  选择在flist中指定的字段。flist的值为字段号(多个值用逗号分隔)或者字段的范围。字段范围可以用两个字段号指定,

中间用连字符隔开。范围-n表示从第1~n个字段,范围n-表示从第n个字段到行尾,n-m表示从第n~m个字段。默认字

段的分隔符为制表符,也可以使用-d选项来指定分割符

-s                       仅打印包含分割符的行,如果没有此选项,则打印不包含分割符的行

示例

先看看原文件

$ cat a.txt
1111 2222 3333 4444 5555
1111 2222 3333 4444 5555
1111 2222 3333 4444 5555
1111 2222 3333 4444 5555
------------------------

cut -c 列范围

$ cut -c1-4 a.txt
1111
1111
1111
1111
----

指定列范围打印字符

cut -c 列号

$ cut -c1,6 a.txt
12
12
12
12
--

指定列号打印字符

cut -d -f

$ cut -d' ' -f1-3 a.txt
1111 2222 3333
1111 2222 3333
1111 2222 3333
1111 2222 3333
------------------------

指定分隔符和字段范围打印字符,此处文本文件中默认以space作为分隔符,最底下没有分隔符,所以全部打印

还可用cut -d -fn,n指定字段号

cut -s -d -f

$ cut -s -d' ' -f1-3 a.txt
1111 2222 3333
1111 2222 3333
1111 2222 3333
1111 2222 3333

使用-s选项打印包含分隔符的行,最末行没有分隔符,所以不打印

Tips

虽然cut在功能上有所限制,但是它能较快的分割列和字段,有时能与paste配合使用

40-cut 简明笔记的更多相关文章

  1. 【python】命令行神器 Click 简明笔记

    全文拷贝自 命令行神器 Click 简明笔记 Click Click 是用 Python 写的一个第三方模块,用于快速创建命令行.我们知道,Python 内置了一个 Argparse 的标准库用于创建 ...

  2. Git & Github 一页简明笔记

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 相信这种一页的简明笔记,对大家也是有帮助的.我的笔记总结自廖雪峰的Gi ...

  3. sc7731 Android 5.1 LCD驱动简明笔记之三

    此篇笔记基于sc7731 - android 5.1,对lcd的gralloc库做一个简明笔记. 第一部分 调用gralloc.sc8830.so所谓的Gralloc模块,它就是一个模块,一个操作ke ...

  4. sc7731 Android 5.1 LCD驱动简明笔记之二

    此篇笔记基于sc7731 - android 5.1,对lcd的framebuffer做一个简明笔记. 一共分为两大部分:第一部分,关于LCD的硬件方面的:第二部分,关于lcd核心处理(framebu ...

  5. HTTP2.0 简明笔记

    前言 RFC2616发布以来,一直是互联网发展的基石.HTTP协议也成为了可以在任何领域使用的核心协议,基于这个协议人们设计和部署了越来越多的应用.HTTP的简单本质是其快速发展的关键,但随着越来越多 ...

  6. nginx rewrite重写规则简明笔记

    nginx rewrite重写规则简明笔记 比方说http://newmiracle.cn/?p=888我要改成能这个访问http://newmiracle.cn/p888/ 首先用正则获取888 ^ ...

  7. 35-less 简明笔记

    分屏显示文本文件 less [options] [file-list] less与more类似,但比more更加完善 例如:在显示一屏文本之后,less将显示提示副等待下一条命令的输入;可以向前或向后 ...

  8. 异步任务神器 Celery 简明笔记

    转自:http://www.jianshu.com/p/1840035cb510 异步任务 异步任务是web开发中一个很常见的方法.对于一些耗时耗资源的操作,往往从主应用中隔离,通过异步的方式执行.简 ...

  9. Git & Github 一页简明笔记(转)main

    由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解. 0. 常用命令一览 ...

随机推荐

  1. Android应用程序“.R文件”消失怎么办

    其实Android自己维护这一个 public final class R类主要是跟新资源文件,这个R.java无需我们自己去修改,如果你不了解千万不要去修改它,它定义的每个资源值都是唯一的,不会和系 ...

  2. ELF Format 笔记(三)—— Section Types

    ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 ELF 文件中会包含很多 section,所有的 section 都在 section header tab ...

  3. linux下 ^M

    在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M”.有几种方法可以处理. 注意:在Linux下,可以通过ctrl+v,ctrl+m,打出^M字符.而却,以 ...

  4. 初试MarkDown

    · 要写个文档,突然就想到要不要试试学学MarkDown,整理一下大致过程 · 首先搜到这篇文章 ,简单介绍了MarkDown,以及OS X 平台上一个简单的工具 mou (目前仍免费) 相关新闻不做 ...

  5. Centos6.6下安装MySQL5.6

    1.先查看本机上已经安装的MySQL rpm –qa | grep -i mysql 如果存在信息说明已经安装MySQL 需要完全卸载以前的MySQL yum remove mysql mysql-s ...

  6. 空间复杂度是什么?What does ‘Space Complexity’ mean? ------geeksforgeeks 翻译

    这一章比较短! 空间复杂度(space complexity)和辅助空间(auxiliary space)经常混用,下面是正确的辅助空间和空间复杂度的定义 辅助空间:算法需要用到的额外或者暂时的存储空 ...

  7. 转载:JavaSE之反射

    该文章转载自:http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html Java反射详解 本篇文章依旧采用小例子来说明,因为我 ...

  8. NOIP2011pj表达式的值[树形DP 笛卡尔树 | 栈 表达式解析]

    题目描述 对于1 位二进制变量定义两种运算: 运算的优先级是: 先计算括号内的,再计算括号外的. “× ”运算优先于“⊕”运算,即计算表达式时,先计算× 运算,再计算⊕运算.例如:计算表达式A⊕B × ...

  9. AC日记——简单密码 openjudge 1.7 10

    10:简单密码 总时间限制:  1000ms 内存限制:  65536kB 描述 Julius Caesar曾经使用过一种很简单的密码.对于明文中的每个字符,将它用它字母表中后5位对应的字符来代替,这 ...

  10. [No000005]C#注册表操作,创建,删除,修改,判断节点是否存在

    //用.NET下托管语言C#操作注册表,主要内容包括:注册表项的创建,打开与删除.键值的创建(设置值.修改),读取和删除.判断注册表项是否存在.判断键值是否存在. //准备工作: //1:要操作注册表 ...