Linux中使用cut命令来提取文本的用法指南

   有时我们经常会遇到这样一些问题:有一页电话号码薄,上面按顺序规则地写着人名、家庭住址、电话、备注等,此时我们只想取出所有人的名字和其对应的电话号码,你有几种方法可以实现呢?

  确实这种纵向定位的方式用常规办法难以实现,这时,cut就可以大显身手了。

  What’s cut?

  子曰:cut命令可以从一个文本文件或者文本流中提取文本列。

  命令用法:

  cut -b list [-n] [file ...]

  cut -c list [file ...]

  cut -f list [-d delim][-s][file ...]

  参数:

  -b, --bytes=LIST

  输出 这些 字节

  -c, --characters=LIST

  输出 这些 字符

  -d, --delimiter=DELIM

  使用 DELIM 取代 TAB 做 字段(field) 分隔符

  -f, --fields=LIST

  输出 这些 字段

  -n

  (忽略)

  -s, --only-delimited

  不显示 没有 分隔符 的 行

  --output-delimiter=STRING

  使用 STRING 作为 输出分隔符, 缺省 (的 输出分隔符) 为 输入分隔符

  --help

  显示 帮助信息, 然后 结束

  --version

  显示 版本信息, 然后 结束

  使用 且 只使用 -b, -c 或 -f 中的 一个 选项. LIST 由 一个 范围 (range) 或 逗号 隔开的 多个 范围 组成. 范围 是 下列 形式 之一:

  N

  第 N 个 字节, 字符 或 字段, 从 1 计数 起

  N-

  从 第 N 个 字节, 字符 或 字段 直至 行尾

  N-M

  从 第 N 到 第 M (并包括 第M) 个 字节, 字符 或 字段

  -M

  从 第 1 到 第 M (并包括 第M) 个 字节, 字符 或 字段

  如果 没有 指定 文件 FILE, 或 FILE 是 -, 就从 标准输入 读取 数据.

  示例:

  代码如下:

  [root@localhost ~]# cat /etc/passwd | cut -b 1 |head -5 #输出文件的第一个字节

  r

  b

  d

  a

  l

  代码如下:

  [root@localhost ~]# cat /etc/passwd | cut -c 1-4 |head -5 #输出文件的前四个字符

  root

  bin:

  daem

  adm:

  lp:x

  代码如下:

  [root@localhost ~]# cat /etc/passwd | cut -f1 -d ':' |head -5 #以:分割文件,输出第一个字段

  root

  bin

  daemon

  adm

  lp

  代码如下:

  # cat a.txt

  ssss affff dddd fe fsc

  rrr f adfa eer ddd

  代码如下:

  # cat a.txt |cut -f1,3 -d $'t' #1,3列

  ssss dddd

  rrr adfa

时间: 2024-10-26 08:24:16

Linux中使用cut命令来提取文本的用法指南的相关文章

c语言编程-如何用C语言实现linux中的ll命令?

问题描述 如何用C语言实现linux中的ll命令? 如何用C语言实现linux中的ll命令?大师能给个完整的代码吗?最好有些注释.(我C语言学的不怎么好,害怕看不懂.) 解决方案 C语言实现的linux下ls命令linux "ll" 命令实现在Linux中, 用C语言简单实现chmod命令 解决方案二: 获取文件属性:http://www.cnblogs.com/hnrainll/archive/2011/05/11/2043361.html 遍历文件夹:http://blog.csd

Linux 中如何通过命令行访问 Dropbox

Linux 中如何通过命令行访问 Dropbox 在当今这个多设备的环境下,云存储无处不在.无论身处何方,人们都想通过多种设备来从云存储中获取所需的内容.由于拥有漂亮的 UI 和完美的跨平台兼容性,Dropbox 已成为最为广泛使用的云存储服务. Dropbox 的流行已引发了一系列官方或非官方 Dropbox 客户端的出现,它们支持不同的操作系统平台. 当然 Linux 平台下也有着自己的 Dropbox 客户端: 既有命令行的,也有图形界面客户端.Dropbox Uploader是一个简单易

linux中mount/umount命令的基本用法及开机自动挂载方法_Linux

本文介绍了linux中mount/umount命令的基本用法及开机自动挂载,具体方法如下: mount命令格式如下: 格式:mount [-参数] [设备名称] [挂载点] 其中常用的参数有: -a 安装在/etc/fstab文件中类出的所有文件系统. -f 伪装mount,作出检查设备和目录的样子,但并不真正挂载文件系统. -n 不把安装记录在/etc/mtab 文件中. -r 讲文件系统安装为只读. -v 详细显示安装信息. -w 将文件系统安装为可写,为命令默认情况. -t <文件系统类型

Linux中使用cat命令查看系统信息的方法

Linux中使用cat命令查看系统信息的方法 cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx) cat /proc/interrupts - 中断 cat /proc/ioports - 设备IO端口 cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size) cat /proc/partitions - 所有设备的所有分区 cat /proc/pci - PCI设备的信息

shell脚步-linux中的shell命令的使用

问题描述 linux中的shell命令的使用 问题描述:现已知道linux下root目录下的 bmp目录,现在想获取bmp的上一级目录? 例如 root登陆后,进入root的目录现在知道有一个 bmp的目录,现在获取bmp目录的上一个级别目录的绝对路径? 解决方案 运用下面的命令 #cd .. #pwd 两步完成任务. 其实就是根目录 / 啊

linux中如何用命令行運行一個so文件?

问题描述 linux中如何用命令行運行一個so文件? 解决方案 so文件是资源库文件,类似于java里的jar包,提供给你使用的资源,SO文件不能单独运行.解决方案二:.so? 冒死不能哎

linux中使用 awk 和正则表达式过滤文本或文件中的字符串

当我们在 Unix/Linux 下使用特定的命令从字符串或文件中读取或编辑文本时,我们经常需要过滤输出以得到感兴趣的部分.这时正则表达式就派上用场了. 什么是正则表达式? 正则表达式可以定义为代表若干个字符序列的字符串.它最重要的功能之一就是它允许你过滤一条命令或一个文件的输出.编辑文本或配置文件的一部分等等. 正则表达式的特点 正则表达式由以下内容组合而成: 普通字符,例如空格.下划线.A-Z.a-z.0-9. 可以扩展为普通字符的元字符,它们包括: (.) 它匹配除了换行符外的任何单个字符.

深入理解Linux中的grep命令_linux shell

介绍 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep [-acinv] [--color=auto] '查找字符串' filename 参数:     -a :将binary文件以text文件的方式查找数据     -c :计算找到'查找字符串'的次数     -i :忽略大小写的区别,即把大小写视为相

Linux中的curl命令详解_Linux

语法 # curl [option] [url] 常见参数: -A/--user-agent <string> 设置用户代理发送给服务器 -b/--cookie <name=string/file> cookie字符串或文件读取位置 -c/--cookie-jar <file> 操作结束后把cookie写入到这个文件中 -C/--continue-at <offset> 断点续转 -D/--dump-header <file> 把header信息