linux中cut批量提取,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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值